Method and system for realizing automatic application deployment

文档序号:1952147 发布日期:2021-12-10 浏览:15次 中文

阅读说明:本技术 一种实现应用自动部署的方法和系统 (Method and system for realizing automatic application deployment ) 是由 井志永 蒋军伟 刘恒辉 张冲 于 2021-09-09 设计创作,主要内容包括:本申请公开了一种实现应用自动部署的方法和系统,该方法包括:应用自动发布平台接收到接入人员发送的应用接入请求后,如果所述接入人员具有项目管理权限,则接收接入人员发出的项目管理指令,添加项目以及待部署的应用,并将所述应用的部署环境设置在相应的应用部署主机上;当接收到项目管理人员发送的部署请求后,创建工单,并将所述工单提交工单审核模块进行审核;接收到所述工单通过审核的指令后,将所述应用发送给自动部署模块;自动部署模块按照部署方案选择部署子模块,基于部署命令将所述应用部署在相应的应用部署主机上。本申请所提供的应用自动部署方法,提高了部署的效率和准确率,自动化完成率高,简化了整个部署流程。(The application discloses a method and a system for realizing automatic application deployment, wherein the method comprises the following steps: after receiving an application access request sent by an access person, if the access person has a project management authority, an automatic application issuing platform receives a project management instruction sent by the access person, adds a project and an application to be deployed, and sets a deployment environment of the application on a corresponding application deployment host; after a deployment request sent by a project manager is received, a work order is created and submitted to a work order auditing module for auditing; after receiving an instruction that the work order passes the audit, sending the application to an automatic deployment module; and the automatic deployment module selects a deployment submodule according to the deployment scheme, and deploys the application on the corresponding application deployment host based on the deployment command. The application automatic deployment method provided by the application improves deployment efficiency and accuracy, is high in automation completion rate, and simplifies the whole deployment process.)

1. A method for realizing automatic application deployment, the method comprising:

after receiving an application access request sent by an access person, an automatic application issuing platform judges whether the access person has a project management authority, if so, receives a project management instruction sent by the access person, adds a project and the application to be deployed on the automatic application issuing platform, and sets a deployment environment of the application on a corresponding application deployment host;

after the application automatic release platform receives a deployment request sent by a project manager, a work order is created, and the work order is submitted to a work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application;

after receiving the order that the work order sent by the work order auditing module passes the auditing, the application automatic issuing platform sends the application to an automatic deployment module, wherein the automatic deployment module is provided with a deployment submodule integrated in a plug-in mode;

and the automatic deployment module selects the deployment submodule according to the deployment scheme of the application, and the deployment submodule deploys the application on the corresponding application deployment host based on a deployment command.

2. The method of claim 1, wherein the receiving, by the application auto-launch platform, the order that the work order passes the review further comprises:

and the application automatic issuing platform synchronizes the work order to a work order management system and receives an instruction that the work order passes the examination and verification, which is sent by the platform to which the application belongs.

3. The method of claim 1, wherein the automatically deploying module having a plug-in integrated deployment sub-module therein comprises:

the automatic deployment module is provided with a task executor integrated in a plug-in mode, and the task executor supports at least one Protocol of Secure Copy (SCP), Secure Shell (SSH) and Secure File Transfer Protocol (SFTP).

4. The method of claim 1, further comprising:

before the application is deployed, the automatic application platform backs up the version of the application which is not deployed;

and when the application deployment fails, the application automatic platform retreats the application to the undeployed version.

5. The method of claim 1, wherein the deployment sub-module deploying the application on the respective application deployment host based on the deployment command comprises:

when the application is deployed in a serial mode, different single deployment sub-modules deploy the application on corresponding application deployment hosts according to a specific sequence and based on deployment commands; when the application is deployed in parallel, the corresponding deployment sub-modules simultaneously deploy the application on the corresponding application deployment host in a parallel manner based on the deployment command.

6. The method of claim 1, wherein setting the deployment environment of the application on the corresponding application deployment host comprises:

and grouping the hosts, and setting the deployment environment of the application on the corresponding grouping hosts.

7. The method of claim 1, further comprising:

and the application automatic release platform monitors the deployment progress of the application.

8. The method of claim 1, wherein the deployment environment of the application comprises:

at least one of a pre-release environment, a production environment, and a test environment.

9. The method of claim 1, wherein the deploy command comprises:

at least one of a pre-deployment command, a post-deployment command, an environmental monitoring command, and an online release command.

10. A system for realizing automatic application deployment is characterized by comprising an environment management module, a work order auditing module and an automatic deployment module:

the environment management module is used for judging whether an access person has project management authority after receiving an application access request sent by the access person, if so, receiving a project management instruction sent by the access person, adding a project and the application to be deployed on the automatic application issuing platform, setting the deployment environment of the application on a corresponding application deployment host, and then informing the project management person that the deployment environment is set;

the work order management module is used for creating a work order after receiving a deployment request sent by a project manager and submitting the work order to the work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application;

the work order auditing module is used for auditing the work orders submitted by the work order management module and sending the work order auditing results to the automatic deployment module;

the automatic deployment module is used for receiving the application after receiving the order that the work order sent by the work order auditing module passes the auditing, selecting a deployment submodule according to the deployment scheme of the application, and deploying the application on a corresponding application deployment host by the deployment submodule based on a deployment command; wherein the automatic deployment module is provided with the deployment submodule integrated in a plug-in mode.

Technical Field

The present application relates to the field of automation technologies, and in particular, to a method and a system for implementing automatic application deployment.

Background

Microservices have become a current topic as a new technology for deploying applications and services in the cloud. The basic idea of microservices is to create applications around business domain components, and applications created by combining different components together can be developed and managed independently. The micro-service does not need to be an independent function or an independent resource like a common service, and the deployment, management and service function delivery can be simpler by using a micro-service architecture platform in scattered components. By deployment, the product or application can be made to operate normally in other server environments.

At present, enterprise applications are gradually slightly serviced, application deployment hosts are dispersed and are large in number, the probability of faults caused by the fact that the number of deployed services is large is increased, errors are prone to occurring and low in efficiency due to manual deployment, the whole deployment process is complex to achieve at present, and maintenance and development of enterprise systems are not facilitated.

Disclosure of Invention

The embodiment of the application provides a method and a system for realizing automatic application deployment, so that the accuracy and efficiency of deployment are improved, and the deployment process is simplified.

In a first aspect, an embodiment of the present application provides a method for implementing automatic deployment of an application, where the method includes:

after receiving an application access request sent by an access person, an automatic application issuing platform judges whether the access person has a project management authority, if so, receives a project management instruction sent by the access person, adds a project and the application to be deployed on the automatic application issuing platform, and sets a deployment environment of the application on a corresponding application deployment host;

after the application automatic release platform receives a deployment request sent by a project manager, a work order is created, and the work order is submitted to a work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application;

after receiving the order that the work order sent by the work order auditing module passes the auditing, the application automatic issuing platform sends the application to an automatic deployment module, wherein the automatic deployment module is provided with a deployment submodule integrated in a plug-in mode;

and the automatic deployment module selects the deployment submodule according to the deployment scheme of the application, and the deployment submodule deploys the application on the corresponding application deployment host based on a deployment command.

In some possible embodiments, the receiving, by the application automatic issuing platform, the instruction that the work order passes the audit further includes:

and the application automatic issuing platform synchronizes the work order to a work order management system and receives an instruction that the work order passes the examination and verification, which is sent by the platform to which the application belongs.

In some possible embodiments, the automatic deployment module having a plug-in integrated deployment submodule therein includes:

the automatic deployment module is internally provided with a task executor integrated in a plug-in mode, and the task executor supports at least one protocol of SCP, SSH and SFTP.

In some possible embodiments, the method further comprises:

before the application is deployed, the automatic application platform backs up the version of the application which is not deployed;

and when the application deployment fails, the application automatic platform retreats the application to the undeployed version.

In some possible embodiments, the deploying sub-module, based on the deployment command, to deploy the application on the corresponding application deployment host includes:

when the application is deployed in a serial mode, different single deployment sub-modules deploy the application on corresponding application deployment hosts according to a specific sequence and based on deployment commands; when the application is deployed in parallel, the corresponding deployment sub-modules simultaneously deploy the application on the corresponding application deployment host in a parallel manner based on the deployment command.

In some possible embodiments, the setting the deployment environment of the application on the corresponding application deployment host includes:

and grouping the hosts, and setting the deployment environment of the application on the corresponding grouping hosts.

In some possible embodiments, the method further comprises:

and the application automatic release platform monitors the deployment progress of the application.

In some possible embodiments, the deployment environment of the application includes:

at least one of a pre-release environment, a production environment, and a test environment.

In some possible embodiments, the deployment command includes:

at least one of a pre-deployment command, a post-deployment command, an environmental monitoring command, and an online release command.

In a second aspect, an embodiment of the present application provides a system for implementing automatic application deployment, where the system includes an environment management module, a work order auditing module, and an automatic deployment module:

the environment management module is used for judging whether an access person has project management authority after receiving an application access request sent by the access person, if so, receiving a project management instruction sent by the access person, adding a project and the application to be deployed on the automatic application issuing platform, setting the deployment environment of the application on a corresponding application deployment host, and then informing the project management person that the deployment environment is set;

the work order management module is used for creating a work order after receiving a deployment request sent by a project manager and submitting the work order to the work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application;

the work order auditing module is used for auditing the work orders submitted by the work order management module and sending the work order auditing results to the automatic deployment module;

the automatic deployment module is used for receiving the application after receiving the order that the work order sent by the work order auditing module passes the auditing, selecting a deployment submodule according to the deployment scheme of the application, and deploying the application on a corresponding application deployment host by the deployment submodule based on a deployment command; wherein the automatic deployment module is provided with the deployment submodule integrated in a plug-in mode.

In the implementation manner of the embodiment of the application, after receiving an application access request sent by an access person, an automatic application issuing platform determines whether the access person has a project management authority, and if so, receives a project management instruction sent by the access person, adds a project and the application to be deployed on the automatic application issuing platform, and sets a deployment environment of the application on a corresponding application deployment host; after a deployment request sent by a project manager is received, a work order is created and submitted to a work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application; after receiving a work order auditing command sent by a work order auditing module, sending the application to an automatic deployment module, wherein the automatic deployment module is provided with a deployment submodule integrated in a plug-in mode; and the automatic deployment module selects the deployment submodule according to the deployment scheme of the application, and the deployment submodule deploys the application on the corresponding application deployment host based on the deployment command. The application automatic deployment method provided by the application improves deployment efficiency and accuracy, is high in automation completion rate, and simplifies the whole deployment process.

Drawings

In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments provided in the present application, and other drawings can be obtained by those skilled in the art according to the drawings.

FIG. 1 is a flowchart of a method for implementing automatic deployment of an application in an embodiment of the present application;

FIG. 2 is a flowchart of a method for executing a deployment task according to an embodiment of the present application;

FIG. 3 is a diagram illustrating a method for creating a project according to an embodiment of the present application;

FIG. 4 is a schematic diagram illustrating a method for setting a deployment environment of an application according to an embodiment of the present application;

FIG. 5 is a flowchart of a work order review method according to an embodiment of the present application;

FIG. 6 is a schematic diagram of a method for creating a work order according to an embodiment of the present application;

FIG. 7 is a content diagram of a work order in an embodiment of the present application;

FIG. 8 is a diagram illustrating a method for defining a deployment command according to an embodiment of the present application;

fig. 9 is a schematic structural diagram of a system for implementing automatic application deployment in an embodiment of the present application.

Detailed Description

At present, enterprise application is micro-servitized, application deployment hosts are dispersed and are large in number, mistakes are easy to make depending on manual deployment, efficiency is low, and for different application deployments, an online work order needs to be created for application and verification, so that the whole deployment process is complex to realize, and efficiency is low.

Based on this, the embodiment of the application provides a method for realizing automatic deployment of applications, so that the efficiency and accuracy of deployment are improved, and the whole deployment process is simplified. During specific implementation, after receiving an application access request sent by an access person, an automatic application issuing platform judges whether the access person has a project management authority, if so, receives a project management instruction sent by the access person, adds a project and the application to be deployed on the automatic application issuing platform, and sets a deployment environment of the application on a corresponding application deployment host; after a deployment request sent by a project manager is received, a work order is created and submitted to a work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application; after receiving a work order auditing command sent by a work order auditing module, sending the application to an automatic deployment module, wherein the automatic deployment module is provided with a deployment submodule integrated in a plug-in mode; and the automatic deployment module selects the deployment submodule according to the deployment scheme of the application, and the deployment submodule deploys the application on the corresponding application deployment host based on the deployment command. The automatic application deployment method provided by the embodiment of the application improves the efficiency and accuracy of deployment, is high in automation completion rate, and simplifies the whole deployment process.

The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and the described embodiments are only exemplary embodiments of the present application, and not all implementations. Those skilled in the art can combine the embodiments of the present application to obtain other embodiments without inventive work, and these embodiments are also within the scope of the present application.

The method for realizing the automatic application deployment is realized based on an automatic application release platform, the platform can manage the automatic deployment of a plurality of projects, and the main functions comprise: the system comprises host information management, project management, application environment grouping management, application environment variable management, deployment scheme management, issue order management and the like, improves deployment efficiency and accuracy, is high in automation completion efficiency, can realize the combination of work order audit and automatic deployment, and simplifies the whole deployment process. The system platform is only an exemplary implementation of the present application and is not limited to this form.

The automatic release platform has a project management function in a micro-service architecture scene, can create a new project according to requirements, adds applications in the project and deploys the applications to the host. The item refers to a business logic item, can be understood as a set of multiple applications, and the item and the applications are in a one-to-many relationship, so that the splitting mode of multiple different applications in a micro-service scene can be better solved. Referring to fig. 1, fig. 1 shows a flowchart of a method for implementing automatic deployment of an application in an embodiment of the present application, so as to improve efficiency and accuracy of deployment and simplify a deployment process. In order to implement the deployment of the application to different host servers, the method specifically includes the following steps:

s101: an application automatic issuing platform receives an application access request sent by an access person;

and if the application deployment requirement exists, the access personnel can access the request to the automatic application publishing platform to complete the deployment task of the application.

S102: judging whether the access personnel has project management authority or not;

s103: if so, receiving a project management instruction sent by the access personnel, adding a project and the application to be deployed on the automatic application issuing platform, and setting a deployment environment of the application on a corresponding application deployment host;

the application and the deployment environment are also in a one-to-many relationship, and different deployment environments such as a development environment, a test environment, a pre-deployment environment, a production environment and the like can be set according to actual requirements. When the application is deployed, the environment management module can set different deployment environments of the application for deployment and release based on the selection operation of the environment by the management personnel.

S104: after receiving a deployment request sent by a project manager, an automatic application release platform creates a work order and submits the work order to a work order auditing module for auditing; the work order is used for recording the deployment scheme information of the application;

after the deployment environment of the application is set, the application is required to be applied for deployment, the automatic application release platform creates a work order for applying for deployment after receiving a deployment request sent by a project manager, and relevant information of a deployment scheme of the application, including information of project application requirements, execution deployment time, a scheme maker, an execution deployment person, a result recognizer and the like, is recorded on the work order. And then submitting the work order to a work order auditing module to audit the work order.

S105: after receiving the order that the work order is approved and sent by the work order auditing module, the automatic application issuing platform sends the application to an automatic deployment module; the automatic deployment module is provided with a deployment submodule integrated in a plug-in mode;

s106: and the automatic deployment module selects the deployment submodule according to the deployment scheme of the application, and the deployment submodule deploys the application on the corresponding application deployment host based on a deployment command.

After the work order is approved, the maintenance personnel click the deployment button, the platform system can automatically execute the deployment task, and the application is deployed to the corresponding deployment host. In the embodiment of the present application, a Docker deployment server is taken as an example to describe how an automatic deployment module implements application deployment, but the present application is not limited to such an implementation manner, and other automatic deployment modules that can implement the same function are also within the protection scope of the present application.

The Docker deployment server includes a task server and a task executor, and referring to fig. 2, a flowchart of a method for executing a deployment task is shown, and the executing application deployment specifically includes the following steps:

s201: the task server receives a deployment task; the deployment task supports a serial deployment task and a parallel deployment task;

s202: the task executor actively draws a deployment task;

if the deployment tasks are serial deployment tasks, the deployment tasks are picked up and executed by the single task executors one by one, and after one task executor picks up the deployment tasks, the next deployment task is picked up by the other task executor; if the tasks are deployed in parallel, the tasks are respectively picked up by a plurality of task executors and are simultaneously executed in a parallel mode, and the number of the task executors can be flexibly increased as required under the Docker environment.

S203: the task executor automatically executes the deployment task based on the deployment command to finish uploading the deployment package.

The method comprises the steps that a manager can define deployment commands including a pre-deployment command, a post-deployment command, an environment monitoring command and an online issuing command, when a task executor executes a deployment task, the deployment commands can be executed in stages according to a deployment flow formed by the deployment commands, and the deployment commands include detecting a basic environment, downloading and decompressing a version package by a server, executing the pre-deployment command, executing a soft chain version to a deployment directory, executing the post-deployment command, applying detection, executing the online command, performing service monitoring, and finally completing the work of uploading the deployment package, smoothly restarting the service, backing up the deployment and the like.

The automatic deployment method provided by the embodiment of the application is different from the existing SSH and agent deployment modes, a mode of combining the task executor and the plug-ins is adopted, different types of task executors are integrated in a plug-ins mode, the automatic deployment tasks of various environments and protocols can be supported, and different task executors can be selected according to specific requirements during deployment application, for example, the task executors supporting SCP, SFTP and other protocols can be selected.

The following specifically describes how to implement automatic deployment of an application based on the entire deployment flow. The access personnel can access various applications needing to be deployed from the external environment, enter an interface of a newly-built project after logging in the automatic publishing platform for the first time, and then add the deployed applications to the corresponding project. The automatic publishing platform has a project management function under a micro-service architecture scene, wherein the project refers to a project of business logic and can be understood as a set of a plurality of applications. Referring to fig. 3, fig. 3 shows a schematic diagram of a method for creating a project, and relevant information of the created project may be filled according to actual requirements, where the information includes a project name, an environment where the project operates, a target cluster, and the like, and a cluster host represents a host server forming a same group, that is, a host to be deployed by an application. If other items need to be created later, the item list is clicked, and then the items are added, so that a new item can be created.

According to the created project, members related to the project need to be added, the responsibilities of the members in the project are set, such as project management personnel, maintenance personnel, deployment and release personnel and the like, and different members are responsible for different tasks in the whole deployment process. The method comprises the steps of carrying out account management on personnel using a platform, configuring member basic information, and carrying out configuration management on the system function used by the member and the authority of managing a project, for example, the member can be set to have a role in the project such as project management personnel, development personnel and maintenance personnel.

After the project is created, the applications in the project can be added, the project and the applications can be in a one-to-many relationship, and one project can contain a plurality of applications, so that the splitting mode of a plurality of different applications in the micro-service architecture scene can be better solved.

When the application is deployed on the host, different deployment environments can be set, and the application and the deployment environments are also in a one-to-many relationship. Referring to fig. 4, fig. 4 shows a schematic diagram of a method for setting a deployment environment of an application, which can customize different deployment environments according to the application to meet application deployment requirements in different scenarios, where the deployment environment of the application includes a test environment, a pre-deployment environment, a production environment, and the like. Under a specific deployment environment, hosts to be deployed by the application can be grouped, a plurality of cluster hosts are configured, and the requirements of batch deployment and gray release of enterprises can be met. The gray level publishing is a publishing mode capable of smoothly transiting, for example, an online test of an A/B product is carried out, namely, a part of users continue to use the original product characteristics A, a part of users start to use the new product characteristics B, if the users have no objection to the product characteristics B, the use range can be gradually expanded, and finally all the users are migrated to the product B. The gray level distribution can ensure the stability of the whole system, and can find and adjust problems in time during the initial gray level so as to reduce the influence degree of the problems on the system. Therefore, when an enterprise deploys the applications, the applications may only want to be deployed on a part of the hosts, and the applications can be deployed in groups at this time.

After the deployment environment of the application is set, a work order for applying for deployment of the application needs to be created, and the deployment and release can be completed only after the work order is approved. Referring to fig. 5, a flow chart of a work order review method is shown, and the work order creation and review mainly include the following steps:

s501: creating a work order;

the creating of the work order is performed by the project manager, and as shown in fig. 6, a schematic diagram of a method for creating the work order is shown, an account of the project manager needs to be logged in, a menu option of a work order management-work order (project manager) is entered, and then a button for creating the work order is clicked to create the work order.

After the work order is created, the relevant information of the work order needs to be filled, referring to fig. 7, the work order information shown in fig. 7 includes the name of the issued application form, the project name and the project requirement, and the time for executing the deployment task. In addition, a scheme maker, a deployment implementation person and a result recognizer need to be selected in advance, so that the related work can be matched with the related personnel of the task to be processed in the following process.

S502: making a deployment scheme;

after the work order is created, a deployment scheme of the application needs to be formulated, and then whether the formulated deployment scheme can be smoothly executed is checked. The deployment scheme is formulated by the scheme formulator selected in the step S501, the account number of the scheme formulator in the work order is logged in, a menu option of the work order (development manager) is entered, the scheme formulating button is clicked to formulate the deployment scheme, relevant scheme information including an application name, a release version, a rollback version, a deployment package path and the like is filled, and then the audit submitting button is clicked to enter a work order audit stage.

S503: and checking the work order.

And after the deployment scheme is formulated, the work order needs to be checked, an account number of an executive deployment person of the work order is logged in, a menu option for checking (maintaining) the work order is entered, and the created work order is checked. And when the audit is passed, the state of the work order is changed into audit pass.

After the maintenance personnel check the work order, the work order is issued, then the task executor can execute the deployment task of the application according to the set execution deployment time, the progress and the state of the whole deployment process are transparent, and the stage to which the deployment task is executed can be checked at any time.

After the work order is approved, the task server receives a deployment task, the task executor actively obtains the deployment task, and the deployment task is divided into a serial deployment task and a parallel deployment task. If the task is a serial deployment task, each single task executor executes the deployment task in sequence; if the deployment tasks are parallel, the deployment tasks are respectively picked up by the plurality of task executors and are simultaneously executed in a parallel mode. The number of the task executors can be flexibly increased according to requirements in a Docker environment. And the task executor executes the deployment steps in stages according to the deployment command to finish the work of uploading a deployment package, smoothly restarting the service, backing up and the like.

Because the whole deployment task is automatically executed by the task executor, a deployment command needs to be customized in advance, and the deployment command is defined according to the conditions of pre-deployment, post-deployment, environment monitoring and online release. Based on a deployment command, the whole deployment process comprises the steps of firstly detecting a basic environment, secondly downloading and decompressing a version packet by a server, thirdly executing a command before deployment, fourthly transferring a soft chain version to a deployment catalogue, fifthly executing a command after deployment, sixthly applying detection, and seventhly executing an on-line command, and eighthly monitoring a service and ninthly completing a deployment task. Referring to fig. 8, a schematic diagram of a method for defining a deployment command is shown, which can customize the deployment command and then automatically execute a deployment task by a task executor according to a deployment flow. The application automation platform can monitor heroic deployment progress, the whole deployment process is visual, the deployment progress is allowed to be checked at any time, and if a problem occurs in deployment, the deployment task can be terminated in advance.

It should be noted that not all deployment tasks of the application can be successfully deployed, so when the automatic deployment task is executed, the previous version of the application deployment can be backed up, and if the application deployment fails, the backup old version can be automatically rolled back. In addition, after the deployment task fails, the system platform can find out the failed node, so that the management personnel can conveniently check and modify the node.

The system platform can query all the deployment operations again, and can perform data statistics on projects, applications, deployment tasks, work orders and related management personnel in the platform and visually display the data statistics in the form of diagrams and the like. In addition, the method also supports the notification of the key events of the deployment progress to the relevant management personnel in the forms of short messages, mails and the like, so that the management personnel can know the deployment progress in time and can adjust the deployment progress in time if the deployment task has problems.

In addition, an embodiment of the present application further provides a system for implementing automatic application deployment, and referring to fig. 9, a schematic structural diagram of the system 900 is shown, and the system includes an environment management module 901, a work order management module 902, a work order review module 903, and an automatic deployment module 904:

the environment management module 901 is configured to determine whether an access person has a project management authority after receiving an application access request sent by the access person, receive a project management instruction sent by the access person if the access person has the project management authority, add a project and the application to be deployed on the automatic application publishing platform, set a deployment environment of the application on a corresponding application deployment host, and then notify a project manager that the deployment environment is set;

the work order management module 902 is used for creating a work order after receiving a deployment request sent by a project manager, and submitting the work order to the work order auditing module 903 for auditing; the work order is used for recording the deployment scheme information of the application;

a work order auditing module 903, configured to audit the work order submitted by the work order management module 902, and send a result of the work order audit to the automatic deployment module 904;

the automatic deployment module 904 is configured to receive the application after receiving the instruction that the work order is approved, which is sent by the work order audit module 903, and select a deployment sub-module according to the deployment scheme of the application, where the deployment sub-module deploys the application on a corresponding application deployment host based on a deployment command; wherein the automatic deployment module is provided with the deployment submodule integrated in a plug-in mode.

The application can be deployed to different deployment environments including a test environment, a production environment, a pre-release environment and the like, different deployment environments can be selected in the environment management module, and the deployment and the release can be performed according to the selected deployment environments during actual deployment and execution.

After the deployment environment of the application is set, the application needs to be applied for deployment, the work order management module receives the deployment application of the application and then creates a work order for applying for deployment of the application, and the work order records the deployment scheme related information of the application, including information such as project application requirements, execution deployment time, scheme maker, execution deployment person and result recognizer. And the scheme maker fills information for making a deployment scheme, including an application name, an application release version, an application rollback version, a deployment package path and the like, then submits the work order to the work order auditing module for auditing, sends an auditing result to the automatic deployment module after auditing is finished, and executes a deployment task by the automatic deployment module after the auditing is passed.

In the embodiment of the application, the automatic deployment module comprises a task server and a task executor, when a result that the work order is approved is received, the task server receives the deployment task, then the task executor actively takes the deployment task, and the deployment task is automatically executed according to a deployment command. The task executor is integrated in a plug-in mode, automatic deployment of various environments and protocols can be supported, and different task executors, such as the task executor supporting SCP and SFTP protocols, are selected according to specific requirements when the application is deployed.

Each embodiment in this specification focuses on differences from other embodiments, and similar parts between the embodiments may be referred to each other. Especially for the device embodiment, since it is basically similar to the method embodiment, the description is simple, and the relevant part can refer to the part of the description of the method embodiment. The above-described embodiments of the apparatus are merely illustrative, where modules described as separate components may or may not be physically separated, and components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed on multiple network units, and some or all of the modules may be selected according to actual needs to implement the solution of the embodiments of the present application.

The foregoing is illustrative of the present application and is not to be construed as limiting thereof in any way. Equivalent changes or modifications of the above embodiments are within the scope of the present application.

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种操作系统个性化配置的方法和智能集成平台

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!