CN114610368A - Platform tool chain integration and maintenance method, system, equipment and medium - Google Patents

Platform tool chain integration and maintenance method, system, equipment and medium Download PDF

Info

Publication number
CN114610368A
CN114610368A CN202210312747.5A CN202210312747A CN114610368A CN 114610368 A CN114610368 A CN 114610368A CN 202210312747 A CN202210312747 A CN 202210312747A CN 114610368 A CN114610368 A CN 114610368A
Authority
CN
China
Prior art keywords
tool
tools
code
tool chain
cloud native
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.)
Granted
Application number
CN202210312747.5A
Other languages
Chinese (zh)
Other versions
CN114610368B (en
Inventor
王晓虎
李学坪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Geely Holding Group Co Ltd
Guangyu Mingdao Digital Technology Co Ltd
Original Assignee
Zhejiang Geely Holding Group Co Ltd
Guangyu Mingdao Digital Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Geely Holding Group Co Ltd, Guangyu Mingdao Digital Technology Co Ltd filed Critical Zhejiang Geely Holding Group Co Ltd
Priority to CN202210312747.5A priority Critical patent/CN114610368B/en
Publication of CN114610368A publication Critical patent/CN114610368A/en
Application granted granted Critical
Publication of CN114610368B publication Critical patent/CN114610368B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention provides a platform tool chain integration and maintenance method, a system, equipment and a medium, comprising the following steps: providing a cloud native component for the tool chain engine and each tool chain, each tool chain interfacing with the workflow engine through a corresponding cloud native component; completing the registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools, triggering code quality analysis of the corresponding tools, and obtaining a code quality analysis result; according to the code quality analysis result, continuously deploying tools corresponding to the tool chain meeting the quality requirement; according to the invention, the tool chain and the workflow engine are butted through the cloud native component, so that the effective integration and integration efficiency of new and old tools are effectively ensured.

Description

Platform tool chain integration and maintenance method, system, equipment and medium
Technical Field
The invention relates to the field of platform research, development, operation and maintenance, in particular to a method, a system, equipment and a medium for integrating and maintaining a platform tool chain.
Background
With the development of cloud-native, various DevOps tools are increasing. However, in the whole DevOps development process, many tools are generated earlier than cloud-native, early tools are deeply applied to the existing system, and completely abandoning old tools to perform system rework will undoubtedly increase the development cost greatly, and how to solve the problem of docking between the old and new systems becomes a big problem in the industry at present.
Disclosure of Invention
In view of the problems in the prior art, the invention provides a platform tool chain integration and maintenance method, a system, equipment and a medium, which mainly solve the problem that the new and old system tools are difficult to butt.
In order to achieve the above and other objects, the present invention adopts the following technical solutions.
A platform tool chain integration and maintenance method comprises the following steps:
providing a cloud native component for the tool chain engine and each tool chain, each tool chain interfacing with the workflow engine through a corresponding cloud native component;
completing registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools, triggering code quality analysis of the corresponding tools, and obtaining a code quality analysis result;
and according to the code quality analysis result, continuously deploying the tool corresponding to the tool chain meeting the quality requirement.
Optionally, each tool chain interfaces the workflow engine through a corresponding cloud native component, including:
each tool chain is in butt joint with a pipeline tool provided by a workflow engine through a corresponding cloud native component, so that interconnection and intercommunication between the pipeline tool and the cloud native component are realized;
code pulling, code scanning, image manufacturing, image uploading, and code deployment of the tools in the tool chain are performed by the pipeline tool in performing a persistent integration/persistent delivery process.
Optionally, completing registration of tools in the corresponding tool chain by the cloud native component, including
Docking a cluster management component in the workflow engine through the cloud native component, and finishing cluster registration, scheduling and deployment of tools in a tool chain through the cluster management component;
the cloud native component realizes code creation and management and synchronization of project management module association code branches through Git, and triggers a pipeline tool in a workflow engine to execute according to a Webhook mechanism.
Optionally, after each tool chain is interfaced with a pipeline tool provided by the workflow engine through a corresponding cloud native component, the method further includes:
managing and analyzing the assembly line declarative file corresponding to the assembly line tool through the cloud native component, wherein the managing and analyzing operation comprises: and adding, deleting, modifying, checking and graphically analyzing the pipeline declaration type file.
Optionally, the persistent integration scheduling of the registered tool is performed through the workflow engine, the code of the corresponding tool is pulled and the code quality analysis of the corresponding tool is triggered, and the obtaining of the code quality analysis result includes:
interfacing an application interface of SonarQUBE through the cloud native component;
when the code quality analysis is triggered, the workflow engine executes the unified scheduling of the codes of the corresponding tools, calls the application interface of the SonarQUBE, performs the quality analysis on the codes of the tools, and acquires the code quality analysis result.
Optionally, the cluster management component includes: a Kuberbetes insert; unified registration, scheduling and deployment of code for tools in the toolchain is performed by the Kuberbetes plug-in.
Optionally, the workflow engine comprises: jenkins, Tekton, and Argo.
A platform toolchain integration and maintenance system, comprising:
the platform docking module is used for providing a cloud native component for the tool chain engine and each tool chain, and each tool chain is docked with the workflow engine through the corresponding cloud native component;
the code scheduling analysis module is used for completing registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools, triggering code quality analysis of the corresponding tools, and acquiring code quality analysis results;
and the tool deployment module is used for continuously deploying the tool corresponding to the tool chain meeting the quality requirement according to the code quality analysis result.
A computer device, comprising: the system comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the processor realizes the steps of the platform tool chain integration and maintenance method when executing the computer program.
A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the platform toolchain integration and maintenance method.
As described above, the platform toolchain integration and maintenance method, system, device and medium of the present invention have the following advantages.
The cloud native component is used for docking the workflow engine to automatically deploy tools in a tool chain, so that the manual operation and maintenance cost is reduced; unified scheduling and cluster management of applications are performed on the butt-joint pipeline tool, the quality of the created codes is guaranteed, and the working efficiency is improved.
Drawings
Fig. 1 is a flowchart illustrating a method for integrating and maintaining a tool chain of a platform according to an embodiment of the present invention.
FIG. 2 is a block diagram of a flatbed toolchain integration and maintenance system according to an embodiment of the present invention.
Fig. 3 is a schematic structural diagram of an apparatus according to an embodiment of the present invention.
Fig. 4 is a schematic structural diagram of an apparatus according to another embodiment of the present invention.
FIG. 5 is a schematic diagram illustrating the interfacing of cloud-native components with a workflow engine according to an embodiment of the present invention;
fig. 6 is a flowchart illustrating tool registration, scheduling, and deployment of cloud native components according to an embodiment of the present invention.
Detailed Description
The following embodiments of the present invention are provided by way of specific examples, and other advantages and effects of the present invention will be readily apparent to those skilled in the art from the disclosure herein. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. It is to be noted that the features in the following embodiments and examples may be combined with each other without conflict.
It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present invention, and the components related to the present invention are only shown in the drawings rather than drawn according to the number, shape and size of the components in actual implementation, and the type, quantity and proportion of the components in actual implementation may be changed freely, and the layout of the components may be more complicated.
The term "Git" is used herein to refer to an open-source distributed version control system that can efficiently and quickly handle both very small to very large project version management and open-source version control software developed by Linus Torvalds to help manage Linux kernel development.
The term "Webhook" is used herein, and Webhook is an API concept, that is, an operation address of the pipeline management service is filled in the code management service, and when the code management service finds that a code is merged and enters a main branch, the code management service operates the address to complete an automatic triggering operation of the pipeline management service.
The term "kubernets", abbreviated as "K8S", is used herein to be an open source system for automatically deploying, expanding and managing containerized applications, and is intended to provide a platform for automatically deploying, expanding and running application containers across a host cluster, kubernets defines a series of building blocks on a design structure, and the purpose is to provide a mechanism that can collectively provide for deploying, maintaining and expanding applications, and the design concept of the components that make up kubernets is loosely coupled and extensible, so that it can meet a variety of different workloads.
The term "Tekton" is used herein to refer to a kubernets native framework suitable for google initiative for creating continuous integration and continuous deployment/delivery (CI/CD) systems that supports building, testing, and deployment in multiple clouds/clusters, enabling advanced deployment such as rolling deployment, blue/green deployment, canary deployment, or GitOps workflow.
The term "Argo" is used herein to refer to an open source container local workflow engine for performing work on kubernets. Argo is implemented as kubernets CRD (custom resource definition). Defining a workflow in which each step in the workflow is a container; modeling a multi-step workflow as a series of tasks, or capturing dependencies between tasks using a graph (DAG); by using the Argo workflow on Kubernetes, the calculation-intensive operation can be easily operated in a short time to carry out machine learning or data processing; the CI/CD pipeline is run locally on Kubernets without the need to configure complex software development products.
The term "Continuous Integration/Continuous Delivery" used herein, namely CI/CD (Continuous Integration/Continuous Delivery), is a software development practice, and refers to a means for continuously and automatically compiling and testing a project in a development phase to control the quality of a code; the continuous delivery is a software engineering method, which is to complete the output process of a software product in a short period to ensure that the software can be stably and continuously kept in a state of being released at any time, and aims to make the development, testing and release of the software faster and more frequent, so that the cost and time of software development can be reduced, and the risk to be borne by the software development can be reduced.
The term "API", or Application Programming Interface Application program Interface, is used herein to refer to an Application program Interface provided by an end system on the internet, also known as an Application Programming Interface, which is a convention for the engagement of different components of a software system, and specifies the manner in which software running on one end system requests the internet infrastructure to deliver data to a particular destination software running on another end system.
The term "sonarqbe" is used herein, and sonar is a static code quality analysis tool, supports more than 25 languages such as Java, Python, PHP, JavaScript, CSS, etc., and can be integrated into services such as IDE, Jenkins, Git, etc., so as to facilitate viewing code quality analysis reports at any time. A sonar project mainly comprises the following four components:
1. one SonarQube Server starts 3 main processes: the Web server is used for developers and managers to browse the high-quality snapshots and configure the SonarQube examples; performing backward Search from the UI based on a Search Server of the elastic Search; the computer Engine server is responsible for processing the code analysis report and storing the code analysis report in a SonarQube database;
2. a SonarQube database stores: configuration of SonarQube instance (security, plug-in settings, etc.); quality snapshots of items, views, etc.;
3. a plurality of SonarQube plug-ins which may comprise language, SCM, integration, identity verification and management plug-ins are installed on the server;
4. one or more sonarscnners are run on the build/persistence integration server to analyze the project.
The term "jira" is used herein and is widely applied to the work fields of defect tracking, customer service, demand collection, process approval, task tracking, project tracking, agile management, and the like. The jira is flexible in configuration, comprehensive in function, simple in deployment and rich in expansion.
Referring to fig. 1, the present invention provides a method for integrating and maintaining a platform toolchain, comprising the following steps:
step S01, providing a cloud native component for the tool chain engine and each tool chain, and butting the workflow engine by each tool chain through the corresponding cloud native component;
step S02, completing the registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools and triggering code quality analysis of the corresponding tools to obtain code quality analysis results;
and step S03, according to the code quality analysis result, continuously deploying the tool corresponding to the tool chain meeting the quality requirement.
In an embodiment, the cloud-native components corresponding to each toolchain may include: the system comprises a code management module, a pipeline module, a continuous deployment module and a code scanning module;
the code management module is used for acquiring tool codes from the corresponding tool chains and realizing code creation and management and synchronous project management module associated code branching based on Git;
the pipeline module is used for realizing pipeline declaration type management by combining the code management module and providing management and analysis operation of a pipeline declaration type file; the management and analysis operation of the pipeline declarative file comprises the steps of adding, deleting, modifying, checking and graphically analyzing the pipeline declarative file;
the continuous deployment module is used for realizing the registration and scheduling of the cluster;
and the code scanning module is used for being in butt joint with the application of the code quality analysis tool and realizing the uniform scheduling of the application by combining the continuous deployment module.
In one embodiment, the project management module provides project management and demand management capabilities in a software development process, records product demands, Bug problems and fault points to form development iteration tasks, and can expand and provide use case management, defect management and other capabilities of automated testing. The demand management can be combined with the code management, the demand-associated code branch and the demand-associated personnel information are realized, the management capacity of the demand and the code is realized, and the demand-associated personnel information is used for converting the demand into the code branch and assigning the personnel to form a product to a developed closed loop.
The project management module can carry out secondary development based on a jira tool, and carries out project creation, requirement creation, development iteration creation and requirement association developer and source code warehouse on a DevOps software development platform through the joint of a jira api interface. The traceable requirements and projects are developed by later source codes, marks are left for DevOps measurement indexes, and QA management departments can effectively evaluate the quality of the whole life cycle of the projects.
The project management module mainly solves the problem that requirements are disjointed with development, and existing source codes and code branches cannot be directly associated with specific requirements in a project. Most of the prior art lacks a ring of project management, so that a project is often finished, the overall situation of the project cannot be evaluated, the overall quality of each product cannot be distinguished, QA is also tired of dealing with the work in the work, and the quality of each link of the product cannot be controlled by integrally collecting information. After the requirements are combined, due to the fact that measurement values such as requirement information, evaluation development time, actual development time, iteration time, pipeline execution time and test time exist, rich indexes are provided for overall evaluation of the project.
And the code management module provides a code tool chain for connecting various open sources or closed sources, realizes the capabilities of code creation and management, code event monitoring and synchronous project management module associated code branches based on Git, and triggers a pipeline tool in the workflow engine to execute according to a Webhook mechanism.
The assembly line module provides the ability of butting a Jenkins assembly line, realizes the ability of assembly line arrangement by means of the natural assembly line self-defining ability of Jenkins, realizes assembly line statement type management by combining source code management, and provides the ability of adding, deleting, modifying, checking and graphical analysis of assembly line statement type files.
And the continuous deployment module realizes the registration and scheduling of the Kubernets cluster based on the capability of Jenkins Kubernets plug-in.
And the code scanning module provides the capability of API docking based on SonarQUBE, and after the cloud native component docks the Kuberbetes plug-in of Jenkins, the Kubernetes performs unified scheduling of tool codes in a tool chain. When the code quality analysis is triggered, a Kubertbetes plug-in is used for scheduling tool codes of a tool chain pulled by a Jenkins pipeline tool, and the quality analysis is carried out on the tool codes by butting an application interface of the SonarQUBE.
In one embodiment, each toolchain interfaces the workflow engine through a corresponding cloud-native component, comprising:
each tool chain is in butt joint with a pipeline tool provided by a workflow engine through a corresponding cloud native component, so that interconnection and intercommunication between the pipeline tool and the cloud native component are realized; code pulling, code scanning, image manufacturing, image uploading, and code deployment of the tools in the tool chain are performed by the pipeline tool in performing a persistent integration/persistent delivery process.
Specifically, after the tool chain is in butt joint with a Jenkins workflow engine through corresponding cloud native components, the tool chain is in butt joint with a production line tool packaged by Jenkins through a continuous deployment module, corresponding tools in the tool chain needing to be in butt joint are utilized by a Jenkins integration platform, and integrated tools are dispatched through kubernets.
In an embodiment, performing persistent integration scheduling on a registered tool through the workflow engine, pulling a code of a corresponding tool and triggering code quality analysis of the corresponding tool, and acquiring a code quality analysis result, includes:
interfacing an application interface of SonarQUBE through the cloud native component;
when the code quality analysis is triggered, the workflow engine executes the unified scheduling of the codes of the corresponding tools, calls the application interface of the SonarQUBE, performs the quality analysis on the codes of the tools, and acquires the code quality analysis result.
Specifically, referring to fig. 5, the cloud native component Operator provided in this embodiment serves as a customized plug-in to interface Jenkins, and serves as a bridge for connecting kubernets and a platform tool chain. The cloud native component Operator is connected with GitService in a butt joint mode, various tool chains are provided, and then unified scheduling management is achieved through Junkins' kubernets. Jenkins is used as a old brand DevOps tool, two customized function developments are mainly provided, one is a pipeline Operator tool and is used for executing tools of code pulling, code scanning, mirror image manufacturing, mirror image uploading and kubernets deployment in the CI/CD process. And the other one is responsible for scheduling each tool chain Operator below to play a role in starting and stopping. Codes of tools in a tool chain acquired by a Jenkins pipeline tool can be monitored and analyzed through SonarQube, and a code quality report CoderPo is output.
Since the source code management capability and the pipeline arrangement capability are both convenient and have respective excellent open source software, but products combining the source code management capability and the pipeline arrangement capability are excellent and few, even if the products have expansibility, the high customization of the DevOps cannot be realized. Therefore, the invention combines the code management module and the pipeline module to realize the identification of the pipeline in the source code, the management of the cloud native application version in the source code, the association of the demand management in the source code and the management of the pipeline execution in the source code. Pipelined execution may include manual execution and automatic execution.
In another embodiment, the continuous deployment module of the cloud native component can also interface with a workflow engine of Tekton or Argo, which is interconnected with the cloud native component by an encapsulation pipeline tool.
In an embodiment, the registration of tools in the corresponding tool chain is accomplished by the cloud native component, including
Docking a cluster management component in the workflow engine through the cloud native component, and finishing cluster registration, scheduling and deployment of tools in a tool chain through the cluster management component;
the cloud native component achieves code creation and management and synchronization of project management module associated code branches through Git, and triggers a pipeline tool in a workflow engine to execute according to a Webhook mechanism.
In one embodiment, the cluster management component comprises: a Kurbetes plug-in; unified registration, scheduling and deployment of code for tools in the toolchain is performed by the Kuberbetes plug-in.
Specifically, referring to fig. 6, the cloud native component operator interfaces with GitService, and registers a tool in a tool chain to the Git repository through the cloud native component, and meanwhile, can register a quality analysis application of the corresponding tool in the SonarQube. The cloud native component operator interfaces Jenkins, schedules tools in a tool chain by using a pipeline tool of Jenkins, and executes CI scheduling (such as continuously pulling codes of registered tools). And triggering the code quality analysis application of the SonarQube after the tool code is pulled, carrying out quality analysis on the code, outputting a code analysis report, and selecting a tool meeting the requirement according to the code analysis report. Tools meeting the quality requirements are uniformly scheduled for continuous deployment through the K8S. The quality requirement may be a preset quality score threshold, a quality evaluation level, or the like.
Referring to fig. 2, the present embodiment provides a system for integrating and maintaining a tool chain of a platform, which is used to perform the method for integrating and maintaining the tool chain of the platform in the foregoing embodiment. Since the technical principle of the system embodiment is similar to that of the method embodiment, repeated description of the same technical details is omitted.
In one embodiment, a platform toolchain integration and maintenance system comprises: a platform docking module 10, configured to provide a cloud native component for the tool chain engine and each tool chain, where each tool chain docks the workflow engine through a corresponding cloud native component; the code scheduling analysis module 11 is configured to complete registration of tools in a corresponding tool chain through the cloud native component, perform continuous integrated scheduling on the registered tools through the workflow engine, pull codes of the corresponding tools, trigger code quality analysis of the corresponding tools, and obtain a code quality analysis result; and the tool deployment module 12 is configured to continuously deploy the tool corresponding to the tool chain meeting the quality requirement according to the code quality analysis result.
An embodiment of the present application further provides an apparatus, which may include: one or more processors; and one or more machine readable media having instructions stored thereon that, when executed by the one or more processors, cause the apparatus to perform the method of fig. 1. In practical applications, the device may be used as a terminal device, and may also be used as a server, where examples of the terminal device may include: the mobile terminal includes a smart phone, a tablet computer, an electronic book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, an MP4 (Moving Picture Experts Group Audio Layer IV) player, a laptop, a vehicle-mounted computer, a desktop computer, a set-top box, an intelligent television, a wearable device, and the like.
The present embodiment also provides a non-volatile readable storage medium, where one or more modules (programs) are stored in the storage medium, and when the one or more modules are applied to a device, the device may execute instructions (instructions) included in the steps of the platform tool chain integration and maintenance method in fig. 1 according to the present embodiment.
Fig. 3 is a schematic diagram of a hardware structure of a terminal device according to an embodiment of the present application. As shown, the terminal device may include: an input device 1100, a first processor 1101, an output device 1102, a first memory 1103, and at least one communication bus 1104. The communication bus 1104 is used to implement communication connections between the elements. The first memory 1103 may include a high-speed RAM memory, and may also include a non-volatile storage NVM, such as at least one disk memory, and the first memory 1103 may store various programs for performing various processing functions and implementing the method steps of the present embodiment.
Alternatively, the first processor 1101 may be, for example, a Central Processing Unit (CPU), an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a controller, a microcontroller, a microprocessor, or other electronic components, and the processor 1101 is coupled to the input device 1100 and the output device 1102 through a wired or wireless connection.
Optionally, the input device 1100 may include a variety of input devices, such as at least one of a user-oriented user interface, a device-oriented device interface, a software programmable interface, a camera, and a sensor. Optionally, the device interface facing the device may be a wired interface for data transmission between devices, or may be a hardware plug-in interface (e.g., a USB interface, a serial port, etc.) for data transmission between devices; optionally, the user-facing user interface may be, for example, a user-facing control key, a voice input device for receiving voice input, and a touch sensing device (e.g., a touch screen with a touch sensing function, a touch pad, etc.) for receiving user touch input; optionally, the programmable interface of the software may be, for example, an entry for a user to edit or modify a program, such as an input pin interface or an input interface of a chip; the output devices 1102 may include output devices such as a display, audio, and the like.
In this embodiment, the processor of the terminal device includes a function for executing each module of the speech recognition apparatus in each device, and specific functions and technical effects may refer to the above embodiments, which are not described herein again.
Fig. 4 is a schematic hardware structure diagram of a terminal device according to another embodiment of the present application. Fig. 4 is a specific embodiment of fig. 3 in an implementation process. As shown, the terminal device of the present embodiment may include a second processor 1201 and a second memory 1202.
The second processor 1201 executes the computer program code stored in the second memory 1202 to implement the method described in fig. 1 in the above embodiment.
The second memory 1202 is configured to store various types of data to support operations at the terminal device. Examples of such data include instructions for any application or method operating on the terminal device, such as messages, pictures, videos, and the like. The second memory 1202 may include a Random Access Memory (RAM) and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
Optionally, the first processor 1201 is provided in the processing assembly 1200. The terminal device may further include: communication component 1203, power component 1204, multimedia component 1205, speech component 1206, input/output interfaces 1207, and/or sensor component 1208. The specific components included in the terminal device are set according to actual requirements, which is not limited in this embodiment.
The processing component 1200 generally controls the overall operation of the terminal device. The processing assembly 1200 may include one or more second processors 1201 to execute instructions to perform all or part of the steps of the method illustrated in fig. 1 described above. Further, the processing component 1200 can include one or more modules that facilitate interaction between the processing component 1200 and other components. For example, the processing component 1200 can include a multimedia module to facilitate interaction between the multimedia component 1205 and the processing component 1200.
The power supply component 1204 provides power to the various components of the terminal device. The power components 1204 may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for the terminal device.
The multimedia components 1205 include a display screen that provides an output interface between the terminal device and the user. In some embodiments, the display screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the display screen includes a touch panel, the display screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.
The voice component 1206 is configured to output and/or input voice signals. For example, the voice component 1206 includes a Microphone (MIC) configured to receive external voice signals when the terminal device is in an operational mode, such as a voice recognition mode. The received voice signal may further be stored in the second memory 1202 or transmitted via the communication component 1203. In some embodiments, the speech component 1206 further comprises a speaker for outputting speech signals.
The input/output interface 1207 provides an interface between the processing component 1200 and peripheral interface modules, which may be click wheels, buttons, etc. These buttons may include, but are not limited to: a volume button, a start button, and a lock button.
The sensor component 1208 includes one or more sensors for providing various aspects of status assessment for the terminal device. For example, the sensor component 1208 may detect an open/closed state of the terminal device, relative positioning of the components, presence or absence of user contact with the terminal device. The sensor assembly 1208 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact, including detecting the distance between the user and the terminal device. In some embodiments, the sensor assembly 1208 may also include a camera or the like.
The communication component 1203 is configured to facilitate communications between the terminal device and other devices in a wired or wireless manner. The terminal device may access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In one embodiment, the terminal device may include a SIM card slot therein for inserting a SIM card therein, so that the terminal device may log onto a GPRS network to establish communication with the server via the internet.
As can be seen from the above, the communication component 1203, the voice component 1206, the input/output interface 1207 and the sensor component 1208 referred to in the embodiment of fig. 4 can be implemented as the input device in the embodiment of fig. 3.
In summary, the platform tool chain integration and maintenance method, system, device and medium of the present invention solve the problem of application lifecycle management after application deployment in software development through the combined design of cloud native components, Jenkins and tool chains, which is often a relatively weak link in the prior art, most of the disclosed schemes only involve application deployment, and there is no specific management measure behind the application deployment, and a professional operation and maintenance team is required to perform overall design and planning, so that a large number of wheels are repeatedly manufactured, and the application management quality is also uneven; the management of the full life cycle of the application is realized by combining the open source tool and the function integration of the management platform, the deployment and the monitoring of the application are quickly realized, and the capabilities of automatic management and version management are realized; the tool chain docking assembly and the assembly line docking tool are provided, automatic deployment is realized by using the advantages of cloud protogenesis, operation and maintenance personnel can simultaneously operate and maintain hundreds of sets of DevOps systems, and the investment cost is reduced; customizing and developing a cloud native tool of the container cloud, customizing a cloud native component for each tool chain, and realizing the butt joint of tool capability and a platform by combining an API (application programming interface) operation interface of the tool; the method has the advantages that the cloud native component is utilized to carry out assembly line redevelopment on the old brand tool Jenkins, the natural support of the Jenkins to a tool chain is combined, the interconnection and intercommunication between the Jenkins and the cloud native component Operator are achieved through the packaging pipeline tool Operator, and therefore the capability butt joint of the DevOps achieved through the tool chain provided by the assembly line scheduling cloud native is completed. Therefore, the invention effectively overcomes various defects in the prior art and has high industrial utilization value.
The foregoing embodiments are merely illustrative of the principles and utilities of the present invention and are not intended to limit the invention. Any person skilled in the art can modify or change the above-mentioned embodiments without departing from the spirit and scope of the present invention. Accordingly, it is intended that all equivalent modifications or changes which may be made by those skilled in the art without departing from the spirit and scope of the present invention as defined in the appended claims.

Claims (10)

1. A platform tool chain integration and maintenance method is characterized by comprising the following steps:
providing a cloud native component for the tool chain engine and each tool chain, each tool chain interfacing with the workflow engine through a corresponding cloud native component;
completing the registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools, triggering code quality analysis of the corresponding tools, and obtaining a code quality analysis result;
and according to the code quality analysis result, continuously deploying the tool corresponding to the tool chain meeting the quality requirement.
2. The platform toolchain integration and maintenance method of claim 1, wherein each toolchain interfaces a workflow engine through a corresponding cloud native component, comprising:
each tool chain is in butt joint with a pipeline tool provided by a workflow engine through a corresponding cloud native component, so that interconnection and intercommunication between the pipeline tool and the cloud native component are realized;
code pulling, code scanning, image manufacturing, image uploading, and code deployment of the tools in the tool chain are performed by the pipeline tool in performing a persistent integration/persistent delivery process.
3. The platform toolchain integration and maintenance method of claim 1, wherein the registration of tools in the corresponding toolchain is completed by the cloud native component, comprising
Docking a cluster management component in the workflow engine through the cloud native component, and finishing cluster registration, scheduling and deployment of tools in a tool chain through the cluster management component;
the cloud native component realizes code creation and management and synchronization of project management module association code branches through Git, and triggers a pipeline tool in a workflow engine to execute according to a Webhook mechanism.
4. The platform tool chain integration and maintenance method according to claim 3, wherein after each tool chain is interfaced with a pipeline tool provided by the workflow engine through the corresponding cloud native component, the method further comprises:
managing and analyzing the assembly line declarative file corresponding to the assembly line tool through the cloud native component, wherein the managing and analyzing operation comprises: and adding, deleting, modifying, checking and graphically analyzing the pipeline declaration type file.
5. The platform tool chain integration and maintenance method according to claim 1, wherein the continuous integration scheduling is performed on the registered tools through the workflow engine, the code of the corresponding tool is pulled and the code quality analysis of the corresponding tool is triggered, and the code quality analysis result is obtained, and the method includes:
interfacing an application interface of SonarQUBE through the cloud native component;
when the code quality analysis is triggered, the workflow engine executes the unified scheduling of the codes of the corresponding tools, calls the application interface of the SonarQUBE, performs the quality analysis on the codes of the tools and acquires the code quality analysis result.
6. The platform toolchain integration and maintenance method of claim 3, wherein the cluster management component comprises: a Kuberbetes insert; unified registration, scheduling and deployment of code for tools in the toolchain is performed by the Kuberbetes plug-in.
7. The platform toolchain integration and maintenance method of claim 1, wherein the workflow engine comprises: jenkins, Tekton, and Argo.
8. A platform toolchain integration and maintenance system, comprising:
the platform docking module is used for providing a cloud native component for the workflow engine and each tool chain, and each tool chain is docked with the workflow engine through the corresponding cloud native component;
the code scheduling analysis module is used for completing registration of tools in the corresponding tool chain through the cloud native component, performing continuous integrated scheduling on the registered tools through the workflow engine, pulling codes of the corresponding tools, triggering code quality analysis of the corresponding tools, and acquiring code quality analysis results;
and the tool deployment module is used for continuously deploying the tool corresponding to the tool chain meeting the quality requirement according to the code quality analysis result.
9. A computer device, comprising: memory, processor and computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method of any of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 7.
CN202210312747.5A 2022-03-28 2022-03-28 Platform tool chain integration and maintenance method, system, equipment and medium Active CN114610368B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210312747.5A CN114610368B (en) 2022-03-28 2022-03-28 Platform tool chain integration and maintenance method, system, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210312747.5A CN114610368B (en) 2022-03-28 2022-03-28 Platform tool chain integration and maintenance method, system, equipment and medium

Publications (2)

Publication Number Publication Date
CN114610368A true CN114610368A (en) 2022-06-10
CN114610368B CN114610368B (en) 2024-02-02

Family

ID=81866922

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210312747.5A Active CN114610368B (en) 2022-03-28 2022-03-28 Platform tool chain integration and maintenance method, system, equipment and medium

Country Status (1)

Country Link
CN (1) CN114610368B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117234760A (en) * 2023-11-15 2023-12-15 中保车服科技服务股份有限公司 DevOps platform creation method, system, storage medium and device

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764785A (en) * 2019-10-09 2020-02-07 国网江苏省电力有限公司信息通信分公司 Power industry cloud platform tool chain based on open source assembly and cloud platform operation and maintenance method
CN111736827A (en) * 2020-08-25 2020-10-02 长沙慧码至一信息科技有限公司 Cloud native development component system
CN112398933A (en) * 2020-11-05 2021-02-23 携程旅游网络技术(上海)有限公司 Cloud native application publishing method, system, device and storage medium
WO2021147288A1 (en) * 2020-01-22 2021-07-29 中国银联股份有限公司 Container cluster management method, device and system
CN113741958A (en) * 2021-09-03 2021-12-03 科讯嘉联信息技术有限公司 Software development and delivery method and system based on cloud-native
CN113778500A (en) * 2021-09-26 2021-12-10 广域铭岛数字科技有限公司 Software development life cycle management platform based on DevOps
CN114124521A (en) * 2021-11-22 2022-03-01 中国联合网络通信集团有限公司 Cloud-native security arrangement method and device, electronic equipment and computer readable medium
US20220091858A1 (en) * 2020-09-18 2022-03-24 Opsera Inc Upgrading DevOps Tools In DevOps Toolchains

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764785A (en) * 2019-10-09 2020-02-07 国网江苏省电力有限公司信息通信分公司 Power industry cloud platform tool chain based on open source assembly and cloud platform operation and maintenance method
WO2021147288A1 (en) * 2020-01-22 2021-07-29 中国银联股份有限公司 Container cluster management method, device and system
CN111736827A (en) * 2020-08-25 2020-10-02 长沙慧码至一信息科技有限公司 Cloud native development component system
US20220091858A1 (en) * 2020-09-18 2022-03-24 Opsera Inc Upgrading DevOps Tools In DevOps Toolchains
CN112398933A (en) * 2020-11-05 2021-02-23 携程旅游网络技术(上海)有限公司 Cloud native application publishing method, system, device and storage medium
CN113741958A (en) * 2021-09-03 2021-12-03 科讯嘉联信息技术有限公司 Software development and delivery method and system based on cloud-native
CN113778500A (en) * 2021-09-26 2021-12-10 广域铭岛数字科技有限公司 Software development life cycle management platform based on DevOps
CN114124521A (en) * 2021-11-22 2022-03-01 中国联合网络通信集团有限公司 Cloud-native security arrangement method and device, electronic equipment and computer readable medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117234760A (en) * 2023-11-15 2023-12-15 中保车服科技服务股份有限公司 DevOps platform creation method, system, storage medium and device
CN117234760B (en) * 2023-11-15 2024-02-27 中保车服科技服务股份有限公司 DevOps platform creation method, system, storage medium and device

Also Published As

Publication number Publication date
CN114610368B (en) 2024-02-02

Similar Documents

Publication Publication Date Title
EP3842948B1 (en) Method and apparatus for testing edge computing, device, and readable storage medium
US10761810B2 (en) Automating testing and deployment of software code changes
US20180113799A1 (en) Model generation for model-based application testing
US9021438B2 (en) Automatic framework for parallel testing on multiple testing environments
US9268672B1 (en) Automated test case generation for applications
Riva et al. Experiences with software product family evolution
US9569204B2 (en) End-to-end continuous integration and verification of software
US10474436B1 (en) System and method for generative programming in an integrated development environment (IDE)
CN111831258B (en) Method and system for creating application program
US20160371175A1 (en) Computing platform and method thereof for searching, executing, and evaluating computational algorithms
Niermann et al. Software framework concept with visual programming and digital twin for intuitive process creation with multiple robotic systems
CN114610368B (en) Platform tool chain integration and maintenance method, system, equipment and medium
CN114185874A (en) Big data based modeling method and device, development framework and equipment
US20180150286A1 (en) Cross-machine build scheduling system
CN116774989A (en) Design and implementation method, system and terminal of software construction and release device
US9996806B2 (en) Modeling an enterprise
CN115509913A (en) Software automation test method, device, machine readable medium and equipment
US11809861B2 (en) Development environment organizer with enhanced state switching and sharing
US20220413843A1 (en) Combining model-driven applications and canvas-type applications with application lifecycle management
CN109189370B (en) Software component generation method, device, equipment and computer readable storage medium
CN111078524A (en) Continuous integration test method based on electric power 6+1 system
Salohonka Automated testing of React Native applications
US12063713B2 (en) System of mobile device operating system and apps delivery service
Piazza Startup performance analysis and optimization of an Android banking application
CN118276856B (en) Application state management method and device, electronic equipment and storage medium

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
GR01 Patent grant
GR01 Patent grant