Software project continuous integration system
By using a continuous integration system for software projects, the compilation and integration of large software projects on different operating systems are automated, solving the problem of low integration efficiency, achieving efficient automated integration and environmental consistency, and simplifying configuration operations.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHONGQING JINKANG NEW ENERGY VEHICLE CO LTD
- Filing Date
- 2025-11-25
- Publication Date
- 2026-04-21
AI Technical Summary
Large-scale software projects involve complex compilation dependencies, environment configurations, and repetitive work during deployment and compilation on different operating systems, resulting in low integration efficiency, inability to perform high-frequency continuous integration, and slow iteration cycles.
A continuous integration system for software projects is provided, including a parameter acquisition module, a configuration determination module, a code acquisition module, a compilation module, and an integration module. By acquiring user configuration parameters, the system determines the target compilation and packaging configuration, automates the compilation and packaging process, and improves integration efficiency by utilizing physical machine clusters and compilation containers.
It enables continuous and automated integration of software projects, improves integration efficiency, ensures the stability of the team's development process and the consistency of the environment, simplifies configuration operations, and reduces operation and maintenance costs.
Smart Images

Figure CN121900802A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of software development technology, and in particular to a continuous integration system for software projects. Background Technology
[0002] Software team members typically develop projects locally, while teams responsible for different functions submit their code to the project code repository after development, compilation, debugging, and verification.
[0003] Large software projects typically consist of multiple subsystems or components. These components may need to be deployed on different operating systems (OS). Therefore, it is necessary to document the deployment environment of each subsystem. Then, the integration team builds the required OS on multiple machines according to the documentation, compiles the corresponding source code on different OSs to obtain the corresponding compiled files, and finally integrates them to obtain the complete software package of the project. This involves complex compilation dependencies, environment configuration, and a lot of repetitive work, resulting in a huge workload, low integration efficiency, and inability to perform high-frequency continuous integration, leading to a slow software project iteration cycle. Summary of the Invention
[0004] To address the aforementioned technical problems, this application provides a continuous integration system for software projects.
[0005] In a first aspect, this application provides a continuous integration system for software projects, comprising: The parameter acquisition module is used to acquire user configuration parameters; The configuration determination module is used to determine the target compilation configuration and target packaging configuration of the target project based on the user configuration parameters. The code acquisition module is used to acquire the source code to be compiled from the target project. The compilation module is used to obtain the target compiled file based on the target compilation configuration and the source code to be compiled; An integration module is used to package the target compiled file according to the target packaging configuration to obtain a target packaged file.
[0006] In one embodiment, the continuous integration system further includes: The project configuration module is used to configure optional projects, including the project identification information of the optional projects and the integration configuration information of each functional module of the optional projects; The user configuration parameters include target project identification information and target parameter values for integrated configuration parameters; The configuration determination module is used to determine the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values.
[0007] In one embodiment, the continuous integration system further includes a physical machine cluster, which comprises multiple physical machines deployed with different operating systems; The user configuration parameters also include target physical machine identification information; The compilation module is used to determine the target physical machine for compiling each of the functional modules according to the target physical machine identification information, and to send the compilation task to the corresponding target physical machine according to the target compilation configuration and the source code to be compiled. The target physical machine is used to deploy a compilation environment on the operating system based on the target compilation configuration and execute the compilation task to generate the target compilation files for each of the functional modules.
[0008] In one embodiment, the integration configuration parameters include compilation container requirements, and the target compilation configuration includes image information for the compilation container requirements; The compilation module is also used to determine the target image information of each of the functional modules according to the target compilation configuration, obtain the target image file corresponding to the target image information, and start the container corresponding to the compilation task on the target physical machine according to the target image file; The target physical machine is also used to deploy a compilation environment on the operating system based on the target compilation configuration and the target image.
[0009] In one embodiment, the step of determining the target image information of each functional module according to the target compilation configuration, obtaining the target image file corresponding to the target image information, and starting the container corresponding to the compilation task on the target physical machine according to the target image file includes: If the target physical machine is running an operating system other than Windows, the target image of the functional module is obtained according to the corresponding target compilation configuration; The container is launched on the corresponding target physical machine based on the target image.
[0010] In one embodiment, the integrated configuration information includes the operating system and configuration file path required for operation; The continuous integration system also includes a user configuration module, used for: Render the project selection interface based on the optional items; When the target project is selected in the project selection interface, the target project identification information is obtained; The target operating system and target configuration file path for each functional module are determined based on the target project identification information. The default physical machine and optional physical machine for each functional module are determined according to the target operating system. The target configuration file for each functional module is obtained according to the target configuration file path, and the optional parameter values of the integration configuration parameters are parsed to obtain them. The parameter configuration interface of the target project is rendered based on the default physical machine, the optional physical machine, and the optional parameter values.
[0011] In one embodiment, the integrated configuration parameters include compilation type, compilation container requirements, compilation file storage location, and packaging method; the target configuration file further includes at least one compilation script path for the compilation type and at least one execution logic for the packaging method. The step of determining the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values includes: Based on the first target parameter value of the compilation type, the target compilation script path is obtained from the target configuration file, the target compilation scripts of each functional module are obtained based on the target compilation script path, the target image information is determined based on the second target parameter value required by the compilation container, and the corresponding target compilation configuration is generated based on the target image information and the target compilation scripts. The target packaging configuration is generated based on the third target parameter value of the packaging method and the location where the compiled file is saved; The compilation module is used to execute the corresponding target compilation script on the target physical machine of each of the functional modules to complete the compilation task and obtain the target compilation file; The integration module is used to obtain the target execution logic from the target configuration file according to the third target parameter value, and use the target execution logic to package the target compiled file.
[0012] In one embodiment, the continuous integration system further includes a project version management platform; The compilation module is also used to upload the target compiled file to the project version management platform; The integration module is used to download the target compilation file corresponding to each functional module of the target project from the project version management platform, package the target compilation file according to the target packaging configuration to obtain the target package file, and upload the target package file to the project version management platform.
[0013] In one embodiment, the continuous integration system further includes a source code baseline management module for generating and managing manifest files for different versions of the target project. The manifest files include the source code repository address, code version, and dependencies between the functional modules of the target project.
[0014] In one embodiment, the user configuration parameters further include a target manifest file, and the code acquisition module is further configured to acquire the source code to be compiled based on the target manifest file.
[0015] Based on common knowledge in the field, the above-mentioned preferred conditions can be combined arbitrarily to obtain various preferred embodiments of this application.
[0016] The beneficial effects that the continuous integration system for the aforementioned software project can achieve include: first, obtaining user configuration parameters through the parameter acquisition module; then, determining the target compilation configuration and target packaging configuration of the target project based on the user configuration parameters through the configuration determination module; next, obtaining the source code to be compiled for the target project through the code acquisition module; and finally, compiling and packaging the source code to be compiled based on the target compilation configuration and target packaging configuration through the compilation and integration modules, thereby achieving continuous and automatic integration of the software project and improving the integration efficiency of the software project. Attached Figure Description
[0017] Figure 1 This is a schematic diagram of the modules of the continuous integration system for the software project in this application embodiment. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0019] It should be noted that the illustrations provided in this embodiment are merely schematic representations of the basic concept of this application. The figures only show components relevant to this application and are not drawn according to the actual number, shape, and size of components in implementation. In actual implementation, the form, quantity, and proportion of each component can be arbitrarily changed, and the component layout may also be more complex. The structures, proportions, sizes, etc., shown in the accompanying drawings are only used to complement the content disclosed in the specification for those skilled in the art to understand and read, and are not intended to limit the implementation conditions of this application. Therefore, they have no substantial technical significance. Any modification to the structure, change in the proportional relationship, or adjustment of the size, without affecting the effect and purpose that this application can produce, should still fall within the scope of the technical content disclosed in this application. At the same time, the terms such as "upper," "lower," "left," "right," "middle," and "one" used in this specification are only for clarity of description and are not intended to limit the scope of implementation of this application. Changes or adjustments in their relative relationships, without substantially altering the technical content, should also be considered within the scope of implementation of this application.
[0020] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the document does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0021] As illustrated herein, unless the context clearly indicates otherwise, words such as “a,” “an,” “an,” and / or “the” do not specifically refer to the singular and may also include the plural. Generally speaking, the terms “comprising” and “including” only indicate the inclusion of explicitly identified steps and elements, which do not constitute an exclusive list, and the method or apparatus may also include other steps or elements.
[0022] The definitions used herein, such as the terms “having,” “may have,” “comprising,” or “may include,” indicate the presence of the corresponding function, operation, element, etc., and do not limit the presence of one or more other functions, operations, elements, etc. Furthermore, it should be understood that the terms “comprising” or “having” as used herein mean the presence of the features, figures, steps, operations, elements, components, or combinations thereof described in the specification, without excluding the presence or addition of one or more other features, figures, steps, operations, elements, components, or combinations thereof.
[0023] The prefixes such as "first" and "second" used in this application embodiment are merely for distinguishing different descriptive objects and do not limit the position, order, priority, quantity, or content of the described objects. The use of ordinal numbers and other prefixes used to distinguish descriptive objects in this application embodiment does not constitute a limitation on the described objects. The description of the described objects is given in the claims or the context of the embodiments, and should not constitute unnecessary limitations due to the use of such prefixes. Furthermore, in the description of this embodiment, unless otherwise stated, "multiple" means two or more.
[0024] In one embodiment, such as Figure 1 As shown, the continuous integration system for software projects provided in this application includes: The parameter acquisition module 101 is used to acquire user configuration parameters; The configuration determination module 102 is used to determine the target compilation configuration and target packaging configuration of the target project based on the user configuration parameters. Code acquisition module 103 is used to acquire the source code to be compiled of the target project; Compilation module 104 is used to obtain a target compiled file based on the target compilation configuration and the source code to be compiled; The integration module 105 is used to package the target compiled file according to the target packaging configuration to obtain the target packaged file.
[0025] Based on this, continuous and automated integration of software projects can be achieved, improving the integration efficiency of software projects.
[0026] In one embodiment, the continuous integration system further includes: The project configuration module is used to configure optional projects, including the project identification information of the optional projects and the integrated configuration information of each functional module of the optional projects.
[0027] Accordingly, the user configuration parameters include target project identification information and target parameter values for integration configuration parameters; the configuration determination module 102 is used to determine the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values.
[0028] Based on the project configuration module described above, the management of software projects that require continuous integration can be achieved by adding, modifying, or deleting project configuration information.
[0029] Generally, the integration scheme and scripts for new projects need to be rewritten, lacking reusability. However, the project configuration module of the above embodiment only needs to add the configuration information of new optional projects, which can be quickly deployed to this integration system.
[0030] After the continuous integration system is triggered, the configuration determination module 102 can quickly determine the target compilation configuration and target packaging configuration of each functional module of the target project based on the target project identification information and the target parameter value of the integration configuration parameters in the user configuration parameters.
[0031] In one embodiment, the continuous integration system further includes a physical machine cluster, which comprises multiple physical machines deployed with different operating systems.
[0032] Accordingly, the compilation module 104 is used to determine the target physical machine for compiling each of the functional modules based on the target physical machine identification information, and send the compilation task to the corresponding target physical machine according to the target compilation configuration and the source code to be compiled.
[0033] Accordingly, the target physical machine is used to deploy a compilation environment on the operating system based on the target compilation configuration and execute the compilation task to generate the target compilation files of each of the functional modules.
[0034] This embodiment improves the automation of software project integration by constructing a physical machine cluster for compilation, running multiple operating systems, and matching the corresponding physical machine for compilation based on the target physical machine identifier information in the user configuration parameters.
[0035] In one embodiment, the integrated configuration parameters include compilation container requirements, and the target compilation configuration includes image information for the compilation container requirements. Accordingly, the compilation module 104 is further configured to determine the target image information for each functional module based on the target compilation configuration, obtain the target image file corresponding to the target image information, and start the container corresponding to the compilation task on the target physical machine based on the target image file, thereby allocating the different compilation tasks to different containers for execution, enabling synchronous compilation and improving compilation efficiency.
[0036] This embodiment builds a container cluster of the compilation environment on a physical machine cluster and prepares multiple image files with different dependent environments in advance. The compilation module 104 can obtain the corresponding image file as the target image file according to the actual needs of each functional module, that is, according to the image information required for compiling the container in the target configuration file. The container is started on the target physical machine corresponding to each functional module using the corresponding target image file, thereby providing different compilation environments and realizing concurrent compilation of the target project, improving code compilation speed, and thus improving the integration speed of the target project.
[0037] Compared to traditional methods, this embodiment ensures that all team members' code is consistent with the production environment, does not depend on a fixed physical machine for the compilation environment, and improves the stability of the team's development process.
[0038] Since image files typically package complete dependencies (such as specific versions of programming languages, libraries, and tools), the container environment started is exactly the same regardless of whether it is a development machine, a test machine, or a production server, fundamentally eliminating the problem of "it can run locally but reports errors online" and ensuring environment consistency.
[0039] Different containers are based on different images and can run conflicting dependencies simultaneously (for example, one container uses Python 3.8 and another uses Python 3.12; one uses MySQL 5.7 and another uses MySQL 8.0) without interfering with each other and without worrying about system-level dependency pollution.
[0040] Taking Docker images as an example, layered storage is used. If different images contain the same base layer (such as the Ubuntu base image and the Python base image), they can share that layer, avoiding repeated downloads and storage. Moreover, container startup only needs to load the difference layer, which is much faster than virtual machines and consumes less resources, enabling efficient reuse and resource saving.
[0041] Furthermore, the image can be distributed across platforms such as Docker Hub and private repositories. In any Docker-enabled environment (Linux, Windows, macOS, cloud servers), you can start the container simply by pulling the image without reconfiguring dependencies, greatly simplifying the deployment process and making it highly portable.
[0042] The image comes pre-installed with all necessary dependencies, eliminating the need to manually perform operations such as "installing Python, configuring environment variables, and installing pip packages" on the target machine. This reduces manual steps and the probability of errors, thereby simplifying configuration operations and lowering maintenance costs.
[0043] Since backend services, cloud servers, and container-related toolchains (Docker, Kubernetes, CI / CD pipelines like Jenkins, and GitLab Runner) all use Linux as their "default target," and the core isolation capabilities of containers (such as process isolation and resource limiting) rely entirely on Linux kernel features, early versions of Windows required "Hyper-V virtualization" to emulate a Linux environment to run containers. This was essentially a "virtual machine within a container," which not only undermined the core advantage of containers being "lightweight" but also posed compatibility risks. Although WSL2 (Windows Subsystem for Linux) was later introduced to optimize the experience, it still belongs to the "emulation layer" and cannot completely replace the directness and stability of the native Linux environment.
[0044] Therefore, in another embodiment, the step of determining the target image information of each functional module according to the target compilation configuration, obtaining the target image file corresponding to the target image information, and starting the container corresponding to the compilation task on the target physical machine according to the target image file specifically includes: If the target physical machine is running an operating system other than Windows, the target image of the functional module is obtained according to the corresponding target compilation configuration; The container is started on the corresponding target physical machine based on the target image. After the container is started, the compilation environment is deployed on the operating system of the target physical machine based on the target compilation configuration.
[0045] If the target physical machine runs a Windows operating system, the compilation environment can be deployed directly on the target physical machine's operating system according to the target compilation configuration, without the need to start a container, thus ensuring the compatibility and stability of the compilation environment.
[0046] In one embodiment, the integrated configuration information includes the operating system and configuration file path required for operation.
[0047] Based on this, the continuous integration system also includes a user configuration module, used for: Render the project selection interface based on the optional items; When the target project is selected in the project selection interface, the target project identification information is obtained; The target operating system and target configuration file path for each functional module are determined based on the target project identification information. The default physical machine and optional physical machine for each functional module are determined according to the target operating system. The target configuration file for each functional module is obtained according to the target configuration file path, and the optional parameter values of the integration configuration parameters are parsed to obtain them. The parameter configuration interface of the target project is rendered based on the default physical machine, the optional physical machine, and the optional parameter values.
[0048] In one embodiment, a user can select a target project through the project selection interface based on the user configuration module described above, configure the parameters after entering the parameter configuration interface of the target project, and then submit an integration request.
[0049] In another embodiment, integration conditions can be automatically triggered based on the status of the software project's code repository, such as code repository updates, and integration requests can be automatically submitted based on the default configuration saved by the user through the user configuration module.
[0050] For example, the integrated configuration parameters include compilation type, compilation container requirements, compilation file storage location, and packaging method. Different compilation types require different compilation scripts, and different packaging methods have different execution logic. Therefore, the target configuration file also includes at least one compilation script path for the compilation type and at least one execution logic for the packaging method.
[0051] Accordingly, determining the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values includes: Based on the first target parameter value of the compilation type, the target compilation script path is obtained from the target configuration file, the target compilation scripts of each functional module are obtained based on the target compilation script path, the target image information is determined based on the second target parameter value required by the compilation container, and the corresponding target compilation configuration is generated based on the target image information and the target compilation scripts. The target packaging configuration is generated based on the third target parameter value of the packaging method and the location where the compiled file is saved; The compilation module 104 is used to execute the corresponding target compilation script on the target physical machine of each of the functional modules to complete the compilation task and obtain the target compilation file; The integration module 105 is used to obtain the target execution logic from the target configuration file according to the third target parameter value, and use the target execution logic to package the target compiled file.
[0052] In one embodiment, the continuous integration system further includes a project version management platform; The compilation module 104 is also used to upload the target compilation file to the project version management platform; The integration module 105 is used to download the target compilation file corresponding to each functional module of the target project from the project version management platform, package the target compilation file according to the target packaging configuration to obtain the target package file, and upload the target package file to the project version management platform.
[0053] For example, the compilation module 104 obtains the target compilation files (e.g., binary files) corresponding to each functional module and uploads them to the project version management platform. The integration module 105 downloads the target compilation files corresponding to each functional module of the target project from the project version management platform, integrates and packages the multiple target compilation files according to the target packaging configuration, obtains the target package file, and uploads the target package file to the project version management platform.
[0054] The project version management platform can be a self-developed platform or a commonly used one, such as JfrogArtifactory, GitLab Packages, Azure Artifacts, etc.
[0055] In one embodiment, the continuous integration system further includes a source code baseline management module for generating and managing manifest files for different versions of the target project. The manifest files include the source code repository address, code version, and dependencies between the functional modules of the target project.
[0056] For example, the user configuration parameters also include a target manifest file, and the code acquisition module 103 is further configured to acquire the source code to be compiled based on the target manifest file.
[0057] In other words, a manifest can be used to manage the source code baseline. The manifest can be used to define and control all source code and their precise versions of each functional module that constitutes a baseline, thereby achieving the standardization, traceability and repeatability of the baseline.
[0058] In a specific example, different versions of image files can be managed using Harbor (a container private cloud platform). The source code versions of various functional modules of the software project can be managed using Git (a code management tool). Jenkins (a continuous integration tool) is used to trigger integration tasks, obtaining module 101 and configuring module 102 through trigger parameters, thus determining the multi-level hierarchical integration configuration parameters, for example: First, users can configure the target physical machine, target manifest file and target parameter values of multiple integration configuration parameters for each functional module of the target project through the user configuration module implemented by Jenkins. Combined with the project identification information of the target project, the user configuration parameters are formed and passed to the configuration determination module 102 (e.g., a self-developed continuous integration configuration management tool) through the parameter acquisition module 101.
[0059] The configuration determination module 102 can find the integrated configuration information of the target project in the project configuration module through the target project identification information.
[0060] The integrated configuration information includes the operating system and configuration file path required for the operation of each functional module of the target project. The configuration determination module 102 can obtain the integrated configuration file of each functional module through the configuration file path.
[0061] Since the integration configuration file includes multiple optional parameter values for integration configuration parameters, the target compilation configuration and target packaging configuration can be obtained by combining the target parameter values of the integration configuration parameters. Specifically, these include the compilation type, compilation container requirements, compilation file storage location, and packaging method.
[0062] In addition to the above integrated configuration parameters, a large amount of other code is fixed, which can save most of the repetitive code work in the continuous integration process when switching / adding or adding software projects.
[0063] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0064] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
Claims
1. A continuous integration system for software projects, characterized in that, The continuous integration system includes: The parameter acquisition module is used to acquire user configuration parameters; The configuration determination module is used to determine the target compilation configuration and target packaging configuration of the target project based on the user configuration parameters. The code acquisition module is used to acquire the source code to be compiled from the target project. The compilation module is used to obtain the target compiled file based on the target compilation configuration and the source code to be compiled; An integration module is used to package the target compiled file according to the target packaging configuration to obtain a target packaged file.
2. The continuous integration system as described in claim 1, characterized in that, The continuous integration system also includes: The project configuration module is used to configure optional projects, including the project identification information of the optional projects and the integration configuration information of each functional module of the optional projects; The user configuration parameters include target project identification information and target parameter values for integrated configuration parameters; The configuration determination module is used to determine the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values.
3. The continuous integration system as described in claim 2, characterized in that, The continuous integration system also includes a physical machine cluster, which comprises multiple physical machines deployed with different operating systems; The user configuration parameters also include target physical machine identification information; The compilation module is used to determine the target physical machine for compiling each of the functional modules according to the target physical machine identification information, and to send the compilation task to the corresponding target physical machine according to the target compilation configuration and the source code to be compiled. The target physical machine is used to deploy a compilation environment on the operating system based on the target compilation configuration and execute the compilation task to generate the target compilation files for each of the functional modules.
4. The continuous integration system as described in claim 3, characterized in that, The integrated configuration parameters include the requirements for compiling the container, and the target compilation configuration includes the image information for the required compilation container. The compilation module is also used to determine the target image information of each of the functional modules according to the target compilation configuration, obtain the target image file corresponding to the target image information, and start the container corresponding to the compilation task on the target physical machine according to the target image file; The target physical machine is also used to deploy a compilation environment on the operating system based on the target compilation configuration and the target image.
5. The continuous integration system as described in claim 4, characterized in that, The step of determining the target image information of each functional module according to the target compilation configuration, obtaining the target image file corresponding to the target image information, and starting the container corresponding to the compilation task on the target physical machine according to the target image file includes: If the target physical machine is running an operating system other than Windows, the target image of the functional module is obtained according to the corresponding target compilation configuration; The container is launched on the corresponding target physical machine based on the target image.
6. The continuous integration system as described in claim 3, characterized in that, The integrated configuration information includes the operating system and configuration file path required for operation; The continuous integration system also includes a user configuration module, used for: Render the project selection interface based on the optional items; When the target project is selected in the project selection interface, the target project identification information is obtained; The target operating system and target configuration file path for each functional module are determined based on the target project identification information. The default physical machine and optional physical machine for each functional module are determined according to the target operating system. The target configuration file for each functional module is obtained according to the target configuration file path, and the optional parameter values of the integration configuration parameters are parsed to obtain them. The parameter configuration interface of the target project is rendered based on the default physical machine, the optional physical machine, and the optional parameter values.
7. The continuous integration system as described in claim 4, characterized in that, The integrated configuration parameters include compilation type, compilation container requirements, compilation file storage location and packaging method. The target configuration file also includes at least one compilation script path for the compilation type and at least one execution logic for the packaging method. The step of determining the target compilation configuration and the target packaging configuration for integrating the various functional modules of the target project based on the target project identification information and the target parameter values includes: Based on the first target parameter value of the compilation type, the target compilation script path is obtained from the target configuration file, the target compilation scripts of each functional module are obtained based on the target compilation script path, the target image information is determined based on the second target parameter value required by the compilation container, and the corresponding target compilation configuration is generated based on the target image information and the target compilation scripts. The target packaging configuration is generated based on the third target parameter value of the packaging method and the location where the compiled file is saved; The compilation module is used to execute the corresponding target compilation script on the target physical machine of each of the functional modules to complete the compilation task and obtain the target compilation file; The integration module is used to obtain the target execution logic from the target configuration file according to the third target parameter value, and use the target execution logic to package the target compiled file.
8. The continuous integration system as described in claim 2, characterized in that, The continuous integration system also includes a project version management platform; The compilation module is also used to upload the target compiled file to the project version management platform; The integration module is used to download the target compilation file corresponding to each functional module of the target project from the project version management platform, package the target compilation file according to the target packaging configuration to obtain the target package file, and upload the target package file to the project version management platform.
9. The continuous integration system as described in claim 1, characterized in that, The continuous integration system also includes a source code baseline management module, which is used to generate and manage manifest files for different versions of the target project. The manifest files include the source code repository address, code version, and dependencies between the functional modules of the target project.
10. The continuous integration system as described in claim 9, characterized in that, The user configuration parameters also include a target manifest file, and the code acquisition module is further used to acquire the source code to be compiled based on the target manifest file.