CN115686747A - Assembly line management system based on CICD platform - Google Patents
Assembly line management system based on CICD platform Download PDFInfo
- Publication number
- CN115686747A CN115686747A CN202211319490.2A CN202211319490A CN115686747A CN 115686747 A CN115686747 A CN 115686747A CN 202211319490 A CN202211319490 A CN 202211319490A CN 115686747 A CN115686747 A CN 115686747A
- Authority
- CN
- China
- Prior art keywords
- pipeline
- deployment
- platform
- management module
- cicd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 claims abstract description 145
- 238000004519 manufacturing process Methods 0.000 claims abstract description 37
- 238000012360 testing method Methods 0.000 claims description 36
- 238000000034 method Methods 0.000 claims description 28
- 238000010276 construction Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 10
- 238000007689 inspection Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 claims description 3
- 238000005096 rolling process Methods 0.000 claims description 3
- 238000012384 transportation and delivery Methods 0.000 abstract description 12
- 238000012423 maintenance Methods 0.000 abstract description 9
- 239000002699 waste material Substances 0.000 abstract description 6
- 230000010354 integration Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012827 research and development Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 239000010453 quartz Substances 0.000 description 2
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Abstract
The invention discloses a production line management system based on a CICD platform, which comprises a production line deployment management module, a production line management module and a production line management module, wherein the production line deployment management module is used for deploying the CICD platform to a production line and configuring and managing the production line; the container application deployment module is used for creating and managing container applications and is communicated with the pipeline deployment platform stage; the resource management module is used for managing resource configuration in the pipeline. The CICD platform is deployed on the production line through the production line deployment management module, so that rich stage types are built in the production line, three parameter reference types including self-defined parameters, production line attributes and stage attributes are supported, the flexible configuration of the production line is realized, meanwhile, the resource management module is arranged, the user can conveniently manage relevant resources of the production line, the resource waste and the maintenance cost are reduced, the container application deployment module provides a deployment template mode to simplify configuration items required to be filled in during the creation and deployment, the use thresholds of different roles are reduced, and the product delivery frequency and the delivery quality of the user are improved.
Description
Technical Field
The invention relates to the technical field of pipeline management, in particular to a pipeline management system based on a CICD platform.
Background
CICD is a software development practice, a method for delivering applications to customers frequently by introducing automation during the application development phase. The core concept of cic is continuous integration, continuous delivery, CI (continuous integration), integrating code into the backbone frequently (multiple times a day). The advantages are that: 1. errors are quickly discovered. 2. Preventing the branches from deviating from the trunk greatly. The goal of continuous integration is to allow for fast iteration of the product while maintaining high quality. CDs (continuous delivery), frequently deliver new versions of the software to the user. It is emphasized that the code is deployable to the production environment at any time and the software is deliverable anytime and anywhere.
The existing pipeline management system is difficult to realize the dynamic scheduling of pipeline tasks, and physical construction machine nodes need to be deployed and maintained, so that the resource waste and the maintenance cost are greatly increased, and a user needs to master complex grammar to research and develop, so that the research and development are difficult, and the product delivery frequency and the delivery quality of the user are seriously reduced.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: the assembly line in the prior art is difficult to realize dynamic scheduling of assembly line tasks, physical construction machine nodes need to be deployed and maintained, resource waste and maintenance cost are increased, and research and development are difficult due to the fact that users are difficult to use.
In order to solve the above technical problem, the present invention provides a pipeline management system based on a CICD platform, including:
the pipeline deployment management module is used for deploying the CICD platform on the pipeline and configuring and managing the pipeline;
the container application deployment module is used for creating and managing container applications and is communicated with the pipeline deployment platform stage;
and the resource management module is used for managing resource allocation in the pipeline.
Further, the pipeline deployment management module includes:
the pipeline configuration module is used for creating, deleting and modifying the pipeline configuration and issuing an effective pipeline configuration;
the assembly line stage module is used for supporting stages of code detection, code inspection, compiling, unit testing, mirror image construction, integrated testing, deployment and manual auditing and providing a stage of self-defining assembly line configuration;
the assembly line list viewing module is used for viewing the assembly line state, the weather list, the assembly line snapshot, the execution assembly line and the copy assembly line;
the pipeline detail checking module is used for checking a pipeline execution record, a forbidden pipeline, a pipeline execution stage view, a pipeline execution stage log, a pipeline console log, a test report of a pipeline quality stage and a log of code change executed by the pipeline each time;
and the pipeline resource configuration module is used for constructing a cluster to enable the pipeline to be scheduled to the appointed cluster and is also used for setting the resource occupation of each pipeline stage.
Further, the container application deployment module includes:
the environment management module is used for creating and deleting the deployment environment;
the deployment template management module is used for creating, modifying and deleting the deployment template;
the application management module is used for creating, modifying and deleting the application;
the deployment management module is used for creating, publishing, rolling back, expanding and shrinking the capacity, publishing the strategy configuration and HPA configuration.
Further, the resource management module includes:
the certificate management module is used for creating, deleting and modifying SSH (simple service gateway), user name or password type certificates;
the Maven configuration management module is used for uploading customized Maven Settings to the CICD platform;
the Dockerfile management module is used for customizing Dockerfile and uploading the Dockerfile to the CICD platform for management;
constructing a cluster management module for dividing Node resources of a Kubernetes cluster according to use requirements;
the SonarQube management module is used for automatically integrating the SonarQube function of a third party into a production line;
the integrated test platform management module is used for integrating a GoAPI test platform of the CICD platform into a production line;
and the Docker Registry management module is used for uploading, modifying and deleting the personal mirror image warehouse Secret in the construction stage of the pipeline mirror image.
Further, the pipeline management system further includes:
the alarm management module is used for providing a notification alarm for the operation condition and the deployment result of the assembly line;
and the permission setting module is used for carrying out permission division on the assembly line according to the project.
Further, the alarm management module is specifically provided with alarm types, failure alarms, success alarms and deployment timeout alarm functions;
the alarm management module is specifically used for setting a multi-stage process for issuing the alarm, automatically continuing or pausing the process after each stage is finished, and sending a stage completion notice in a mail and short message notification mode.
Further, the permission setting module includes:
the project manager module is used for configuring all the authorities of a pipeline, application deployment, certificate management, configuration management, dockerfile management and deployment template under the project;
and the project common member module is used for configuring a pipeline under the project, application deployment, certificate management, configuration management, dockerfile management, view permission of a deployment template and execution permission of the pipeline.
Furthermore, the Dockerfile management module provides two mirror image construction modes, one is a mirror image construction mode from a code warehouse, and the other is a mirror image construction mode from a CICD platform.
Compared with the prior art, the pipeline management system based on the CICD platform has the beneficial effects that:
the CICD platform is deployed on the pipeline through the pipeline deployment management module, so that rich stage types are built in the pipeline, three parameter reference types including self-defined parameters, pipeline attributes and stage attributes are supported, the flexible configuration of the pipeline is realized, meanwhile, the resource management module is arranged, a user can conveniently manage related resources of the pipeline, the resource waste and the maintenance cost are reduced, the configuration items required to be filled in the process of creating and deploying are simplified by the way that the container application deployment module provides the deployment template, the use thresholds of different roles are reduced, and the product delivery frequency and the delivery quality of the user are improved.
Drawings
FIG. 1 is a schematic structural diagram of a CICD platform-based pipeline management system in an embodiment of the present invention;
FIG. 2 is a schematic structural diagram of a pipeline deployment management module of the pipeline management system based on the CICD platform in the embodiment of the present invention;
FIG. 3 is a schematic structural diagram of a container application deployment module of a CICD platform-based pipeline management system in an embodiment of the present invention;
FIG. 4 is a schematic structural diagram of a resource management module of a CICD platform-based pipeline management system in an embodiment of the invention;
FIG. 5 is a schematic structural diagram of an authority setting module of the CICD platform-based pipeline management system in the embodiment of the invention;
FIG. 6 is a schematic diagram of a pipeline configuration of a pipeline management system based on a CICD platform in the embodiment of the invention.
Detailed Description
The following detailed description of the present invention is provided in connection with the accompanying drawings and examples. The following examples are intended to illustrate the invention but are not intended to limit the scope of the invention.
In the description of the present application, it is to be understood that the terms "center", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", and the like indicate orientations or positional relationships based on those shown in the drawings, and are only for convenience in describing the present application and simplifying the description, but do not indicate or imply that the referred device or element must have a particular orientation, be constructed in a particular orientation, and be operated, and thus should not be construed as limiting the present application.
The terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present application, "a plurality" means two or more unless otherwise specified.
In the description of the present application, it is to be noted that, unless otherwise explicitly specified or limited, the terms "mounted," "connected," and "connected" are to be construed broadly, e.g., as meaning either a fixed connection, a removable connection, or an integral connection; can be mechanically or electrically connected; they may be connected directly or indirectly through intervening media, or they may be interconnected between two elements. The specific meaning of the above terms in the present application can be understood in a specific case by those of ordinary skill in the art.
The architecture of the CICD platform mainly comprises the following modules:
front: js intermediate layer, forward the request to the back end;
CICD-Web module: CICD pipeline management service;
CICD-Jenkins Module: the Jenkins component is used for scheduling pipeline tasks;
CICD-Nexus module: (optional) the method is used for acting on the user private service to build and accelerate;
CICD-Pipeline-Pod: when the pipeline executes scheduling, jenkins calls Kubernets to temporarily create, and the pipeline is destroyed after execution is completed;
CICD-Quartz module: the CICD scheduler serves to realize functions of pipeline timing trigger, pollSCM and the like;
CICD-CN-supply-Web module: the CICD cloud native deployment service provides a Web interface;
a CICD-CN-deployment-Operator module: the module is completely realized by adopting a cloud native technology, the version of the container application is controlled by using a CRD plus controller mode, and an expandable release process is realized;
CICD-CN-Execution-Operator module: the module is deployed at a service cluster side and used for controlling deployment and upgrading operations of a workload in the service cluster.
Detailed description of the architecture:
the light boat CICD is composed of modules such as a front end UI, platform authentication and authorization, a CICD pipeline service, a CICD deployment platform service (including Web, a deployment controller and a deployment actuator), a CICD scheduler service, a Jenkins Master service and a Nexus private agent, and meanwhile basic services such as platform alarm and audit are integrated, a light boat container cloud platform is in seamless butt joint, and a light boat container cloud mirror image warehouse can be directly used.
The platform adopts a front-end and back-end separation scheme, the front end adopts a Vue.js frame and is responsible for UI page display and interaction control, node.js service is erected as an intermediate layer, and a front-end request is forwarded to perform data interaction with the back-end service.
The CICD pipeline service framework adopts SpringBoot2.0 and JPA, the database uses MySQL, the Maven management dependency is used, a Jenkins-Client-API submodule optimized based on an official version is contained in the CICD pipeline service framework, and Restful API is provided for the outside.
The CICD Pipeline function relies on Jenkins Pipeline and Kubernets to dynamically schedule the Slave Pod, the Pipeline task is executed, and the bottom layer calls APIServer of the light boat Kubernets cluster. In addition, the CICD service itself may also rely on Kubernets to store Secret data.
The CICD scheduler service performs service encapsulation based on Quartz, supports incoming Hook link and schedules pipeline tasks based on Crontab timing.
The CICD platform provides a scheme for mounting a Nexus private server and a Node on a local warehouse, is used for Maven construction acceleration, and can be flexibly selected by a user according to needs.
The CICD container deployment service comprises a Web service, a deployment controller and a deployment executor, and the Web service provides an open API for the outside; the deployment controller controls an application release process; the deployment executor really executes the deployment work and the state monitoring of the container, and reports an execution result to the deployment controller. The life cycle of resources is managed by the container deployment service by taking application as a center, and the automation of Kubernets in various resource deployments is realized.
The upper layer of the CICD simplifies, abstracts and encapsulates the Pipeline of Jenkins, a user can release and generate the corresponding Jenkins Pipeline only by configuring a Pipeline template through a page UI, and the complex syntax of a Groovy script does not need to be mastered. Meanwhile, jenkins Pipeline is enhanced, and functions of self-defining Pipeline parameters, pipeline attribute reference, stage attribute reference and the like are supported.
As shown in fig. 1, in an embodiment of the present application, a CICD platform based pipeline management system is provided, including: the system comprises a production line deployment management module, a container application deployment module and a resource management module, wherein the production line deployment management module is used for deploying a CICD platform on a production line and configuring and managing the production line, so that rich phase types are built in the production line, three parameter reference types including self-defined parameters, production line attributes and phase attributes are supported, and the flexible configuration of the production line is realized; the container application deployment module is used for creating and managing container applications and is communicated with the assembly line deployment platform in a stage mode, the container application deployment module simplifies configuration items required to be filled in the creating and deployment process by providing a deployment template, the use thresholds of different roles are reduced, and the product delivery frequency and the delivery quality of users are improved; the resource management module is used for managing resource allocation in the assembly line, so that a user can conveniently manage related resources of the assembly line, and resource waste and maintenance cost are reduced.
As shown in fig. 2, in an embodiment of the present application, a CICD platform based pipeline management system is provided, where the pipeline deployment management module includes:
the pipeline configuration module is used for creating, deleting and modifying the pipeline configuration and issuing an effective pipeline configuration;
the assembly line stage module is used for supporting stages of code detection, code inspection, compiling, unit testing, mirror image construction, integrated testing, deployment and manual auditing and providing a stage of self-defining assembly line configuration;
as shown in fig. 6, rich phase types are further built in the pipeline, which support the phases of code detection, code inspection, compilation, unit test, mirror image construction, integration test, deployment, manual review, and the like, and provide a custom phase to realize the customization capability of the pipeline phase. Three parameter reference types of user-defined parameters, pipeline attributes and stage attributes are supported, and flexible configuration of the pipeline is achieved. And various modes such as manual execution pipeline and continuous integration triggering pipeline execution are supported, and the requirements of different scenes and different stages on continuous integration are met.
Specifically, the CICD platform is internally provided with code detection, unit testing, code detection, compiling, integrated testing, mirror image construction, deployment and script testing stages.
Code detection, wherein the platform supports two mainstream code warehouses of Git and SVN at present, wherein Git supports a general SSH protocol and can be in seamless connection with third party Git platforms such as Gitlab and gitubb; the SVN supports two protocols of HTTPS/SSH, and supports the detection of the appointed branch or label in the detection mode.
And unit testing, wherein automatic configuration of the unit testing of Maven and Gradle is supported, a user is supported to use a Jacoco plug-in to count the code coverage rate, a coverage rate-based card point is supported, and mail notification of a test report is supported.
The method comprises the steps of code detection, integration with a third party SonarQube, support of code static inspection and unit test, test report uploading function, support of click and report display of SonarQube results, and mail notification function.
And compiling, namely compiling the specified code path, supporting two main stream languages of Java and node. And a unit test case can be run in the compiling stage, so that the limitation of compiling resources specified by a user is supported, the consumption of excessive CPU and memory resources in the compiling process is avoided, in addition, the user is allowed to set the compiling overtime time, and the Pod resources of the pipeline can be automatically released when the compiling time exceeds the specified time.
Mirror image construction supports two Dockerfile import modes: from the code repository, from the platform. When the Dockerfile comes from the code warehouse, the Dockerfile is constructed according to the Dockerfile in the warehouse, and the specified Dockerfile file position is supported. When the Dockerfile comes from the platform, the user needs to add the relevant content in the Dockerfile management in advance and then select the existing Dockerfile. Dockerfile in Dockerfile management may be referenced by multiple pipelines. A plurality of mirror version naming rules are provided: time stamping and a custom Tag mode. Time stamping: build time will be used as mirror Tag. A user-defined mode: attributes of various stages of the pipeline may be referenced as variables, such as code branching, commitID, and the like.
Deployment and seamless integration of a container deployment platform, wherein the deployment type can be directly selected in a production line, and 2 deployment modes are supported: the continuous deployment of Kubernets native and the continuous deployment of container deployment platforms, the first is based on Kubernets workload resources, and the second needs to create applications and deployments in corresponding environments first.
And (4) integrating the test, integrating a light boat GoAPI automatic test platform, automatically triggering a test set to execute, setting a stuck point according to a test result, displaying the integrated test result, and notifying a test report through a mail.
And in the manual auditing stage, the manual auditing process is mainly used for introducing a manual auditing process in the process of executing the assembly line, and the method is very useful for scenes such as online environment release and the like.
The user can use the mirror image provided by the platform (integrating a common Linux tool), and can also manufacture the mirror image of the user and configure and use the mirror image in the user-defined stage.
The assembly line list viewing module is used for viewing the assembly line state, the weather list, the assembly line snapshot, the execution assembly line and the copy assembly line;
the pipeline detail checking module is used for checking a pipeline execution record, a forbidden pipeline, a pipeline execution stage view, a pipeline execution stage log, a pipeline console log, a test report of a pipeline quality stage and a log of code change executed by the pipeline each time;
and the pipeline resource configuration module is used for constructing a cluster to enable the pipeline to be scheduled to the appointed cluster and is also used for setting the resource occupation of each pipeline stage.
As shown in fig. 3, in an embodiment of the present application, there is provided a CICD platform-based pipeline management system, where the container application deployment module includes:
the environment management module is used for creating and deleting the deployment environment;
specifically, the environment management is a kubernets cluster configuration interface provided for an administrator (or an operation and maintenance person) and is used for specifying a kubernets cluster and a namespace to be specifically deployed for a workload. By the abstract concept of an environment, a software developer only needs to be concerned with deploying code to a certain environment, and does not need to be concerned with the cluster and namespace of the environment. The environment contains the environment name, environment flag, base environment (canoe platform concept), environment level, cluster and namespace. The environment name is a name visible to a user, the environment mark is a platform unique identifier, the selection of the basic environment and the selection of the cluster space are linked, and the environment name is mainly used for determining a Kubernets cluster and a name space corresponding to the environment.
The deployment template management module is used for creating, modifying and deleting the deployment template;
specifically, the deployment template management is a unified deployment configuration management function provided for operation and maintenance personnel. Generally, deployment configurations of an application in different environments are substantially the same, for example, pod tags, affinity and anti-affinity of pods, mirror pull policies, resource quotas, and the like, and when creating a Deployment, only the configuration of the application itself, such as a mirror, an environment variable, and the like, needs to be concerned. Therefore, the deployment template management is to separate out fixed configuration and changeable configuration by adopting a templated Yaml file mode, separate out different points of interest of research and development and operation and maintenance, and help a terminal user to quickly create deployment. The deployment templates are divided into private templates and public templates; private templates are visible to the project, public templates are visible to the full platform. Operation of private templates requires project administrator privileges, while operation of public templates requires platform administrator privileges.
The application management module is used for creating, modifying and deleting the application;
the deployment management module is used for creating, publishing, rolling back, expanding and shrinking the capacity, publishing the strategy configuration and HPA configuration.
Preferably, the deployment management module supports and deploys application-bound HPA, so that the capability and the application range of the HPA are improved, and the deployment strategy and the automatic horizontal scaling capacity are combined.
Specifically, the main page of the application management shows all applications under one project, the application detail page shows all deployments under one application, and each deployment corresponds to a different environment. Deployments under the same application cannot be associated with the same environment.
As shown in fig. 4, in an embodiment of the present application, a CICD platform-based pipeline management system is provided, where the resource management module includes:
the certificate management module is used for creating, deleting and modifying SSH, user name or password type certificates;
the Maven configuration management module is used for uploading customized Maven Settings to the CICD platform;
specifically, the Maven configuration management module can enable a user to upload a custom Maven configuration file and use the custom Maven configuration file in the compilation stage of the pipeline.
The Dockerfile management module is used for customizing Dockerfile and uploading the Dockerfile to the CICD platform for management;
constructing a cluster management module for dividing Node resources of a Kubernetes cluster according to use requirements;
the SonarQube management module is used for automatically integrating the SonarQube function of a third party into a production line;
specifically, the SonarQube management module can enable a user to define a SonarQube platform and automatically integrate with a production line.
The integrated test platform management module is used for integrating a GoAPI test platform of the CICD platform into a production line;
preferably, the integrated test platform management module can enable a user to define the GoAPI test platform, and then the GoAPI test platform is referred in the integrated test stage of the pipeline.
And the Docker Registry management module is used for uploading, modifying and deleting the personal mirror image warehouse Secret in the construction stage of the pipeline mirror image.
Specifically, the Docker Registry management module manages mirror warehouse Secret information, is used for pulling and pushing a mirror to a corresponding warehouse, currently supports Docker Hub and mirror warehouses built in a CICD platform, and can use these configurations in a pipeline mirror construction stage or a deployment stage.
In an embodiment of the present application, a pipeline management system based on a CICD platform is provided, where the pipeline management system further includes:
the alarm management module is used for providing notification alarms of the operation condition and the deployment result of the assembly line;
and the authority setting module is used for carrying out authority division on the assembly line according to the projects.
In the embodiment of the application, a pipeline management system based on a CICD platform is provided, wherein an alarm management module is specifically provided with alarm types, failure alarms, success alarms and deployment timeout alarm functions;
the alarm management module is specifically used for setting a multi-stage process for issuing the alarm, automatically continuing or pausing the process after each stage is finished, and sending a stage completion notice in a mail and short message notification mode.
Specifically, the alarm management module provides two types of events of pipeline success and pipeline failure. The user can set alarm rules, alarm objects, alarm contacts, notification modes and alarm degrees. The container deployment alarm is a function provided for notifying a user of the state of a distribution process, and supports mail notification and short message notification. The issuing process is multi-stage, each stage can be automatically continued or suspended after finishing, the alarm management can timely inform a user that the stage is finished, the pipeline is not continuously executed after a certain time after the stage is finished, and the like, so that the issuing process is prevented from being stopped, and the issuing duration is shortened. Alarm management requires configuring alarm rules, alarm receivers and alarm modes on an interface. The configuration granularity of the alarm can be application or deployment, and the alarm management module supports the alarm of various events.
As shown in fig. 5, in an embodiment of the present application, a pipeline management system based on a cic d platform is provided, where the authority setting module includes:
the project manager module is used for configuring all the authorities of a pipeline, application deployment, certificate management, configuration management, dockerfile management and deployment template under the project;
and the project common member module is used for configuring a pipeline under a project, application deployment, certificate management, configuration management, dockerfile management, view authority of a deployment template and execution authority of the pipeline.
Furthermore, the authority setting module is used for carrying out authority isolation according to the project, and project managers and common members of the project have different authorities on the production line under the project.
In an embodiment of the application, a pipeline management system based on a CICD platform is provided, and the Dockerfile management module provides two mirror image construction modes, one is a mirror image construction mode from a code warehouse, and the other is a mirror image construction mode from the CICD platform.
Specifically, when the image building mode from the CICD platform is used, the user may select to add a Dockerfile in the Dockerfile management, and the Dockerfile may be referred to by multiple pipelines at this time.
In conclusion, the pipeline deployment management module is used for deploying the CICD platform to the pipeline and configuring and managing the pipeline; the container application deployment module is used for creating and managing container applications and is communicated with the pipeline deployment platform stage; the resource management module is used for managing resource configuration in the pipeline. The CICD platform is deployed on the production line through the production line deployment management module, so that rich stage types are built in the production line, three parameter reference types including self-defined parameters, production line attributes and stage attributes are supported, the flexible configuration of the production line is realized, meanwhile, the resource management module is arranged, the user can conveniently manage relevant resources of the production line, the resource waste and the maintenance cost are reduced, the container application deployment module provides a deployment template mode to simplify configuration items required to be filled in during the creation and deployment, the use thresholds of different roles are reduced, and the product delivery frequency and the delivery quality of the user are improved.
Finally, it should be noted that: it will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.
The above description is only an embodiment of the present invention, but not intended to limit the scope of the present invention, and any structural changes made according to the present invention should be considered as being limited within the scope of the present invention without departing from the spirit of the present invention. It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working process and related description of the system described above may refer to the corresponding process in the foregoing method embodiments, and will not be described herein again.
The terms "comprises," "comprising," or any other similar term are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus.
So far, the technical solutions of the present invention have been described with reference to further embodiments shown in the drawings, but it is easily understood by those skilled in the art that the scope of the present invention is obviously not limited to these specific embodiments. Equivalent changes or substitutions of related technical features can be made by those skilled in the art without departing from the principle of the invention, and the technical scheme after the changes or substitutions can fall into the protection scope of the invention.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.
Claims (8)
1. A pipeline management system based on a CICD platform is characterized by comprising:
the pipeline deployment management module is used for deploying the CICD platform on the pipeline and configuring and managing the pipeline;
the container application deployment module is used for creating and managing container applications and is communicated with the pipeline deployment platform stage;
and the resource management module is used for managing resource allocation in the pipeline.
2. The CICD platform-based pipeline management system according to claim 1, wherein the pipeline deployment management module includes:
the pipeline configuration module is used for creating, deleting and modifying the pipeline configuration and issuing an effective pipeline configuration;
the assembly line stage module is used for supporting stages of code detection, code inspection, compiling, unit testing, mirror image construction, integrated testing, deployment and manual auditing and providing a stage of self-defining assembly line configuration;
the assembly line list viewing module is used for viewing the assembly line state, the weather list, the assembly line snapshot, the execution assembly line and the copy assembly line;
the pipeline detail checking module is used for checking a pipeline execution record, a forbidden pipeline, a pipeline execution stage view, a pipeline execution stage log, a pipeline console log, a test report of a pipeline quality stage and a log of code change executed by the pipeline each time;
and the pipeline resource configuration module is used for constructing a cluster to enable the pipeline to be scheduled to the appointed cluster and is also used for setting the resource occupation of each pipeline stage.
3. The CICD platform-based pipeline management system according to claim 1, wherein the container application deployment module includes:
the environment management module is used for creating and deleting the deployment environment;
the deployment template management module is used for creating, modifying and deleting the deployment template;
the application management module is used for creating, modifying and deleting the application;
the deployment management module is used for creating, publishing, rolling back, expanding and shrinking the capacity, publishing the strategy configuration and HPA configuration.
4. The CICD platform-based pipeline management system according to claim 3, wherein the resource management module comprises:
the certificate management module is used for creating, deleting and modifying SSH (simple service gateway), user name or password type certificates;
the Maven configuration management module is used for uploading customized Maven Settings to the CICD platform;
the Dockerfile management module is used for customizing Dockerfile and uploading the Dockerfile to the CICD platform for management;
constructing a cluster management module for dividing Node resources of a Kubernetes cluster according to use requirements;
the SonarQube management module is used for automatically integrating the SonarQube function of a third party into a production line;
the integrated test platform management module is used for integrating a GoAPI test platform of the CICD platform into a production line;
and the Docker Registry management module is used for uploading, modifying and deleting the personal mirror image warehouse Secret in the mirror image construction stage of the pipeline.
5. The CICD platform-based pipeline management system according to claim 1, further comprising:
the alarm management module is used for providing notification alarms of the operation condition and the deployment result of the assembly line;
and the permission setting module is used for carrying out permission division on the assembly line according to the project.
6. The CICD platform-based pipeline management system of claim 5,
the alarm management module is specifically provided with alarm types, failure alarms, success alarms and deployment timeout alarm functions;
the alarm management module is specifically used for setting a multi-stage process for issuing the alarm, automatically continuing or pausing the process after each stage is finished, and sending a stage completion notice in a mail and short message notification mode.
7. The CICD platform-based pipeline management system according to claim 5, wherein the permission setting module comprises:
the project manager module is used for configuring all the authorities of a pipeline, application deployment, certificate management, configuration management, dockerfile management and deployment template under the project;
and the project common member module is used for configuring a pipeline under the project, application deployment, certificate management, configuration management, dockerfile management, view permission of a deployment template and execution permission of the pipeline.
8. The CICD platform-based pipeline management system of claim 4,
the Dockerfile management module provides two mirror image construction modes, one is a mirror image construction mode from a code warehouse, and the other is a mirror image construction mode from a CICD platform.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211319490.2A CN115686747A (en) | 2022-10-26 | 2022-10-26 | Assembly line management system based on CICD platform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211319490.2A CN115686747A (en) | 2022-10-26 | 2022-10-26 | Assembly line management system based on CICD platform |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115686747A true CN115686747A (en) | 2023-02-03 |
Family
ID=85099987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211319490.2A Pending CN115686747A (en) | 2022-10-26 | 2022-10-26 | Assembly line management system based on CICD platform |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115686747A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220057999A1 (en) * | 2020-08-20 | 2022-02-24 | Jpmorgan Chase Bank, N.A. | Method and apparatus for implementing an end-to-end api design and development module integrating with firmwide tools and processes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10120670B1 (en) * | 2018-03-28 | 2018-11-06 | Capital One Services, Llc | Systems and methods for building generic CI/CD pipelines |
CN113779477A (en) * | 2021-09-13 | 2021-12-10 | 科大国创云网科技有限公司 | Assembly line publishing method and system based on PaaS cloud platform |
CN113778486A (en) * | 2021-09-09 | 2021-12-10 | 上海浦东发展银行股份有限公司 | Containerization processing method, device, medium and equipment for code pipeline |
-
2022
- 2022-10-26 CN CN202211319490.2A patent/CN115686747A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10120670B1 (en) * | 2018-03-28 | 2018-11-06 | Capital One Services, Llc | Systems and methods for building generic CI/CD pipelines |
CN113778486A (en) * | 2021-09-09 | 2021-12-10 | 上海浦东发展银行股份有限公司 | Containerization processing method, device, medium and equipment for code pipeline |
CN113779477A (en) * | 2021-09-13 | 2021-12-10 | 科大国创云网科技有限公司 | Assembly line publishing method and system based on PaaS cloud platform |
Non-Patent Citations (1)
Title |
---|
魏春来;付永振;: "基于微服务的DevOps研究与实现" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220057999A1 (en) * | 2020-08-20 | 2022-02-24 | Jpmorgan Chase Bank, N.A. | Method and apparatus for implementing an end-to-end api design and development module integrating with firmwide tools and processes |
US11900074B2 (en) * | 2020-08-20 | 2024-02-13 | Jpmorgan Chase Bank, N.A. | Method and apparatus for implementing an end-to-end API design and development module integrating with firmwide tools and processes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109814879B (en) | Automatic CI/CD project deployment method and storage medium | |
US7475126B2 (en) | Method and apparatus for system lineup and testing | |
CN111506412B (en) | Airflow-based distributed asynchronous task construction and scheduling system and method | |
US20170244626A1 (en) | Device and settings management platform | |
CN104541246B (en) | System and method for providing a service management engine for use in a cloud computing environment | |
CN103189839B (en) | The system and method disposed for the automatization of multiunit computer environment | |
US10423402B1 (en) | Workstation uptime, maintenance, and reboot service | |
US20030074446A1 (en) | Method and apparatus for notifying administrators of selected events in a distributed computer system | |
CN108234168A (en) | A kind of method for exhibiting data and system based on service topology | |
CN104246740A (en) | Test and management for cloud applications | |
US20180307472A1 (en) | Simultaneous deployment on cloud devices and on on-premise devices | |
CN109783348A (en) | Testing tool method for managing resource based on cloud platform, system | |
CN111158708A (en) | Task arrangement engine system | |
CN112230987B (en) | Distributed modular plug-in frame realization system and method | |
CN115686747A (en) | Assembly line management system based on CICD platform | |
CN115357308B (en) | Docker-based edge Internet of things agent device, system and application method | |
CN112328390A (en) | Method and device for automatically implementing cloud management platform and storage medium | |
CN102377853B (en) | Management device and method for application, interface window and service of mobile terminal | |
CN105843725A (en) | Monitoring method and device of IaaS platform | |
CN115858108A (en) | Cloud edge coordination system constructed based on Kubeedge edge computing framework | |
CN112379989B (en) | Timed task process and queue service process management system and method | |
CN105930181A (en) | Runtime interface integration method based on plug-in mechanism | |
CN113434155A (en) | Automatic deployment system in mixed cloud mode | |
CN103327062A (en) | A system and method for providing enterprise information technology lifecycle tools synchronization platform | |
US20230067168A1 (en) | Network service construction graphical user interface, apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230203 |