Upgrading deployment method, device and equipment for multiple application software and storage medium

By acquiring version difference information and adjusting environment variables, deployment errors caused by version dependencies in multi-application software upgrades were resolved, improving upgrade efficiency and success rate, and reducing manpower costs and errors.

CN119271235APending Publication Date: 2025-01-07SHANGHAI GUBO TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411182243.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-27
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

During the upgrade process of multiple application software, the dependencies between versions can easily lead to deployment errors. Furthermore, due to the high requirements for data privacy, the deployment process is time-consuming and prone to errors.

Method used

By obtaining version difference information, adjusting environment variables in the common configuration file, replacing environment variables in the upgrade requirement deployment script, and executing the deployment script in the order of upgrade requirement version information, the upgrade of multiple application software can be achieved.

Benefits of technology

It improves the efficiency and success rate of multi-application software upgrades, reduces labor costs and errors in the deployment process, and ensures the accuracy and security of upgrades.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119271235A_ABST
    Figure CN119271235A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-application software upgrading deployment method and device, equipment and a storage medium. Obtaining version difference information according to the target version information and the current version information of the at least one to-be-upgraded application; adjusting an environment variable in the public configuration file based on the version description information; replacing the environment variable in each upgrade demand deployment script in the upgrade demand deployment script list based on the adjusted environment variable in the public configuration file; and for each to-be-upgraded application, sequentially executing the transformed and replaced upgrade demand deployment scripts according to the order of the upgrade demand version information so as to upgrade and deploy the to-be-upgraded application. According to the multi-application software upgrade deployment method provided by the embodiment of the invention, the upgrade deployment of at least one to-be-upgraded application is completed based on the upgrade demand version information list, the upgrade demand deployment script list and the version description information of each upgrade demand version in the version difference information; the efficiency and success rate of multi-application software upgrading deployment can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of computer technology, and in particular to a method, device, equipment and storage medium for upgrading and deploying multiple application software. Background Art

[0002] Currently, the management and analysis of many businesses (such as semiconductors) generally require the collaboration of multiple applications. During the upgrade process, the corresponding versions of each application are selected for deployment, which is prone to deployment errors due to the dependencies between versions. In addition, since the business itself has high requirements for data privacy, applications generally need to be deployed locally. The deployment process involves a lot of information collection and file transfer work, which is not only time-consuming but also prone to errors. Summary of the invention

[0003] The embodiments of the present invention provide a method, device, equipment and storage medium for upgrading and deploying multiple application software, which can improve the efficiency and success rate of upgrading and deploying multiple application software.

[0004] In a first aspect, an embodiment of the present invention provides a method for upgrading and deploying multiple application software, including:

[0005] Obtaining version difference information according to target version information and current version information of at least one application to be upgraded; wherein the version difference information includes: a list of upgrade requirement version information, a list of upgrade requirement deployment scripts, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script in a one-to-one manner;

[0006] Adjusting the environment variables in the public configuration file based on the version description information;

[0007] Replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the adjusted environment variables in the public configuration file;

[0008] For each application to be upgraded, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgraded requirement version information, so as to upgrade and deploy the upgraded application to be upgraded.

[0009] In a second aspect, an embodiment of the present invention further provides an upgrade deployment device for multiple application software, including:

[0010] A version difference information acquisition module, used to acquire version difference information according to target version information and current version information of at least one application to be upgraded; wherein the version difference information includes: a list of upgrade requirement version information, a list of upgrade requirement deployment scripts, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script in a one-to-one manner;

[0011] A public configuration file adjustment module, used to adjust the environment variables in the public configuration file based on the version description information;

[0012] An upgrade requirement deployment script adjustment module, used to replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the environment variables in the adjusted public configuration file;

[0013] The upgrade requirement script execution module is used to execute the transformed and replaced upgrade requirement deployment scripts in sequence according to the order of the upgrade requirement version information for each application to be upgraded, so as to perform upgrade deployment on the application to be upgraded.

[0014] In a third aspect, an embodiment of the present invention further provides an electronic device, the electronic device comprising:

[0015] at least one processor; and

[0016] a memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the upgrade deployment method for multiple application software described in the embodiment of the present invention.

[0018] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the upgrade deployment method for multiple application software described in the embodiment of the present invention when executed.

[0019] The embodiment of the present invention discloses a method, device, equipment and storage medium for upgrading and deploying multiple application software. Version difference information is obtained according to the target version information and current version information of at least one application to be upgraded; the upgrade requirement version information corresponds to the upgrade requirement deployment script one by one; the environment variables in the public configuration file are adjusted based on the version description information; the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list are replaced based on the environment variables in the adjusted public configuration file; for each application to be upgraded, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgrade requirement version information to upgrade and deploy the application to be upgraded. The upgrade deployment method for multiple application software provided in this embodiment completes the upgrade deployment of at least one application to be upgraded based on the upgrade requirement version information list, the upgrade requirement deployment script list and the version description information of each upgrade requirement version in the version difference information, which can improve the efficiency and success rate of the upgrade deployment of multiple application software. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 It is a flow chart of a method for upgrading and deploying multiple application software in Embodiment 1 of the present invention;

[0021] Figure 2 It is a structural diagram of a device for upgrading and deploying multiple application software in Embodiment 2 of the present invention;

[0022] Figure 3 It is a structural schematic diagram of an electronic device in Embodiment 3 of the present invention. DETAILED DESCRIPTION

[0023] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only parts related to the present invention, rather than all structures, are shown in the accompanying drawings.

[0024] Embodiment 1

[0025] Figure 1 A flowchart of a method for upgrading and deploying multiple application software is provided in Example 1 of the present invention. This embodiment is applicable to the situation where some or all applications in multiple application software are upgraded and deployed. The method can be executed by an upgrade and deployment device for multiple application software. The device can be implemented in the form of software and / or hardware, and optionally, by an electronic device, which can be a mobile terminal, a PC or a server, etc.

[0026] In this embodiment, the multi-application software may be semiconductor multi-application software, and it is necessary to manage the versions and variables involved in each application in the multi-application software.

[0027] The following data tables will be generated during the version management process: 1. A data table used to record all version release information, and each record has a unique identifier (ID). This data table can be recorded as a record table; 2. A data table that records the version information of each application currently running in the current online environment, and the version information is associated with the displacement ID in the record table. This data table is recorded as a current table; when the version of at least one application running in the online environment changes, the current table is updated. 3. A data table used to record application content snapshots taken from the current table at set intervals (such as every 24 hours). This data table stores multiple groups of application content, and each group of application content includes an application list and an application version number. This data table can be called a snapshot table, recorded as a snapshot table. 4. A data table used to record calibrated application content and its corresponding vulnerability repair version information. This data table can be called a calibration table, recorded as a standard table. The calibration table generation process can be: determine a calibration application content from every certain number of application contents in the historical application content in the snapshot table, and then extract the version information of the vulnerability repair based on the application in the previous calibration application content from two adjacent calibration application contents, obtain the vulnerability repair version information corresponding to the previous calibration application content, and finally write each calibration application content and its corresponding vulnerability repair version information into the calibration table.

[0028] Among them, managing variables involved in each application in multiple application software can be understood as managing environment variables involved in each application.

[0029] 1. Define a public configuration file, which contains public configuration information and public environment variables, and stores environment variables in key-value format. The public configuration file is called through the public configuration file path when the application starts. If an application has a private configuration file, the public configuration file is called through the public configuration file path and the private configuration file is called through the private configuration file path when the application starts, and the public configuration file is overwritten with the private configuration file.

[0030] 2. Public configuration variables are set in the application deployment script (sql script). Before the deployment script is executed, the corresponding variables in the deployment script need to be matched through the preset regular expression; then the matched variables are used as key information (key) to find the corresponding variable values ​​(value) from the public configuration file and replace the public configuration variables in the sql script. The preset regular expression can be expressed as: pattern = r'\$\{[AZ]{1,}_*[AZ]*_*[AZ]*_*[AZ]*_*[AZ]*\}'.

[0031] like Figure 1As shown, the method specifically comprises the following steps:

[0032] S110: Obtain version difference information according to target version information and current version information of at least one application to be upgraded.

[0033] The version difference information includes: an upgrade requirement version information list, an upgrade requirement deployment script list, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script one by one.

[0034] Among them, the version information can be represented by a version number, the target version information can be understood as the version number after the application is upgraded, and the current version information can be understood as the version number of the application currently running, that is, the version number before the upgrade. The upgrade requirement version information can be understood as the version between the current version and the target version and the target version. Exemplarily, assuming that the current version information is V1.0, the target version information is V4.0, and between V1.0 and V4.0, there are two versions V2.0 and V3.0, then the upgrade requirement version information includes: V2.0, V3.0 and V4.0. The upgrade requirement deployment script can be understood as the deployment script corresponding to the upgrade requirement version information. Based on the above example, the deployment scripts corresponding to versions V2.0, V3.0 and V4.0 respectively. The version description information of each upgrade requirement version can be understood as the version note (releasenote) of each upgrade requirement version, and the version description information can include the functional changes of the new version relative to the previous version and the adjustment information of the variables, etc. For example, the version description information of version V2.0 includes the functional changes and variable adjustment information of version V2.0 relative to version 1.0.

[0035] Specifically, the method for obtaining a list of version information requiring upgrade based on the target version information and current version information of at least one application to be upgraded may be: for each application to be upgraded, obtaining a list of version information of the application to be upgraded; extracting the version information between the target version information and the current version information from the list of version information as the intermediate version information; arranging the intermediate version information and the target version information according to the release time to obtain a list of version information requiring upgrade.

[0036] The version information list includes version information of the application to be upgraded arranged according to the release time, which can be understood as all version information of the application to be upgraded, that is, including all versions from the first version to the latest version. The way to obtain the version information list of the application to be upgraded can be: query all version information contained in the application to be upgraded from the snapshot table or the calibration table in the above embodiment.

[0037] Specifically, the process of acquiring the snapshot table may be: taking snapshots of the application contents of the first data table at set intervals, and writing the acquired multiple application contents into the second data table.

[0038] Among them, the first data table stores the version information of each application currently running, and the first data table is updated in real time; the application content includes an application list and the version information corresponding to each application. That is, the first data table is equivalent to the current table in the above embodiment, and the second data table is equivalent to the snapshot table in the above embodiment. The first set time length can be a preset value, for example: every 24 hours. Taking a snapshot of the application content of the first data table to the second data table can be understood as: copying the application content in the first data table to the second data table. The second data table includes multiple application contents, and each content includes an application list and the version information corresponding to each application.

[0039] In this embodiment, when the second data table is obtained, all version information corresponding to the application to be upgraded can be queried from the second data table, thereby obtaining a version information list of the application to be upgraded.

[0040] Specifically, the process of obtaining the calibration table can be: among multiple application contents, determine a calibration application content every set number of application contents to obtain multiple calibration application contents; between every two adjacent calibration application contents, extract the version information of the vulnerability repaired based on the application in the previous calibration application content, obtain the vulnerability repair version information corresponding to each calibration application content, and write each calibration application content and its corresponding vulnerability repair version information into a third data table.

[0041] Among them, the multiple application contents may be application contents stored in the second data table. The calibrated application contents meet the following conditions: each application in the calibrated application contents can run normally under the corresponding version. Among them, vulnerability repair can be understood as only repairing the vulnerability or error of the previous version of the application, and does not include the addition of new functions, that is, the vulnerability repair version can be understood as the bugfix version.

[0042] In this embodiment, the application content between two adjacent calibrated application contents is determined as the intermediate application content, and the version information of the vulnerability repair based on the application in the previous calibrated application content is extracted from the intermediate application content, so as to obtain the vulnerability repair version information corresponding to each calibrated application content, and each calibrated application content and its corresponding vulnerability repair version information are written into the third data table, thereby obtaining the calibration table. That is, the third data table contains the version information of each application of each calibrated application content and the vulnerability repair version corresponding to each calibrated application content.

[0043] In this embodiment, after obtaining the third data table, all version information corresponding to the application to be upgraded can be queried from the third data table, thereby obtaining a version information list of the application to be upgraded, which can improve the upgrade efficiency and accuracy of the application.

[0044] Specifically, after obtaining the version information list of the application to be upgraded, the version information between the target version information and the current version information can be extracted from the version information list as the intermediate version information; the intermediate version information and the target version information are arranged according to the release time to obtain the upgrade requirement version information list.

[0045] Specifically, the method for obtaining a list of upgrade requirement deployment scripts based on the target version information and current version information of at least one application to be upgraded can be: obtaining the deployment package of each upgrade requirement version information in the upgrade requirement version information list; decompressing the deployment packages respectively, and obtaining the deployment scripts corresponding to each upgrade requirement version information as the upgrade requirement deployment scripts; sorting the upgrade requirement deployment scripts according to the release time of the corresponding upgrade requirement version information, and obtaining a list of upgrade requirement deployment scripts.

[0046] The deployment package may be obtained by compressing and packaging the backend file (jar package), frontend file and deployment script of a certain version of the application in advance. In this embodiment, after obtaining the upgrade requirement version information list, the deployment package of each upgrade requirement version information in the upgrade requirement version information list is obtained, and then each deployment package is decompressed respectively to obtain the deployment script corresponding to each upgrade requirement version information, that is, the upgrade requirement deployment script, and finally the upgrade requirement deployment script is sorted according to the release time of the corresponding upgrade requirement version information to obtain the upgrade requirement deployment script list.

[0047] Among them, the method for obtaining the deployment package can be: obtaining application basic information; obtaining back-end files and front-end files based on the deployment path and version information; obtaining the deployment script corresponding to the version information based on the deployment script directory; packaging and compressing the back-end files, front-end files and deployment scripts to obtain the deployment package corresponding to the version information.

[0048] Among them, the basic information of the application includes the application name, the deployment path of each version of the application, and the deployment script directory. The deployment path can be understood as the storage path of the back-end files and front-end files of each version of the application. The deployment script directory records the storage path of the deployment scripts of each version of the application. Specifically, for an application under a certain version, first obtain the back-end files and front-end files based on the deployment path and version information, then obtain the deployment script corresponding to the version information based on the deployment script directory, and finally package and compress the back-end files, front-end files and deployment scripts to obtain the deployment package corresponding to the version information. In this embodiment, pre-generating a deployment package can improve the efficiency and accuracy of upgrade deployment.

[0049] Optionally, if the backend file and the frontend file are not obtained based on the deployment path and version information, it is necessary to obtain the backend file and the frontend file from the archive database according to the version information.

[0050] The archive database is used to store backend files and frontend files transferred from the deployment path.

[0051] S120: Adjust the environment variables in the public configuration file based on the version description information.

[0052] The public configuration file may be a public configuration file that has been stored in the application deployment end, and the public configuration file is a function configuration file corresponding to the current version information.

[0053] In this embodiment, the version description information includes the adjustment method of the environment variables of the new version relative to the previous version. According to the version description information of each upgrade requirement version, the adjustment method of the environment variables from the current version to the target version can be determined, so that the environment variables in the public configuration file can be adjusted based on the adjustment method.

[0054] Specifically, the version description information includes first adjustment information of environment variables from the previous version to the current upgrade requirement version; the method of adjusting the environment variables in the public configuration file based on the version description information can be: determining second adjustment information of the environment variables in the public configuration file from the current version to the target version based on the first adjustment information of each upgrade requirement version; and adjusting the environment variables in the public configuration file based on the second adjustment information.

[0055] Wherein, the second adjustment information includes at least one of the following adjustment methods of the environment variable: modification of the environment variable, deletion of the environment variable and addition of the environment variable. Exemplarily, assuming that the upgrade requirement versions include: V2.0, V3.0 and V4.0, assuming that the value of a certain environment variable A in the V1.0 version is x, in the version description information of V2.0, the environment variable A is adjusted from x to x1, in the version description information of V3.0, the environment variable A is adjusted from x1 to x2, and in the version description information of V4.0, the environment variable A is adjusted from x2 to x3, then the adjustment method of the environment variable A from V1.0 to V4.0 is: from x to x3. Then the value of the environment variable A in the public configuration file is adjusted from x to x3. In this embodiment, the environment variables in the public configuration file are adjusted based on the version description information to ensure smooth upgrade and deployment of the application.

[0056] S130: Replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the adjusted environment variables in the common configuration file.

[0057] The upgrade requirement deployment script is set with an environment variable, which is not a specific value and therefore needs to be replaced with a specific value. In this implementation, firstly, an environment variable corresponding to the environment variable in the upgrade requirement deployment script is found from the adjusted public configuration file, and then the environment variable in the upgrade requirement deployment script is replaced with the found environment variable.

[0058] Specifically, the method of replacing the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the environment variables in the adjusted public configuration file can be: matching the environment variables in the upgrade requirement script through a preset regular expression; searching for the target environment variables in the adjusted public configuration file based on the matched environment variables; and replacing the matched environment variables with the target environment variables.

[0059] Among them, the preset regular expression is pre-set, and its function is to find the environment variables in the upgrade requirement deployment script. Exemplarily, the preset regular expression can be expressed as: pattern = r'\$\{[AZ]{1,}_*[AZ]*_*[AZ]*_*[AZ]*_*[AZ]*\}'. The method of searching for the target environment variable in the adjusted public configuration file based on the matched environment variable can be: using the matched environment variable as key information (key), and searching its corresponding value, that is, the target environment variable, from the adjusted public configuration file based on the key information.

[0060] S140: For each application to be upgraded, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgraded requirement version information, so as to upgrade and deploy the upgraded application.

[0061] In this embodiment, after the environment variables in each upgrade requirement deployment script are replaced, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgrade requirement version information to perform upgrade deployment on the application to be upgraded.

[0062] Optionally, after the application to be upgraded is upgraded and deployed, the following steps are also included: batch backing up the historical files of the application before the upgrade; and starting the upgraded application with one click based on the configuration information, front-end files and back-end files in the public configuration file.

[0063] Optionally, other additional operations, such as re-running tasks, may be performed during the process of executing the upgrade requirement deployment script after the transformation and replacement.

[0064] In this embodiment, version management solves the exception caused by selecting the wrong version due to dependency issues during deployment; variable management makes the configuration content universal, reduces the labor cost caused by changing the configuration files during the deployment process, and reduces the errors caused by the inclusion of environment-related information in the SQL script execution process; pre-generating a version information list of the deployment package and the application can improve deployment efficiency and accuracy; version comparison makes the changes before and after the upgrade clearer, and avoids the accuracy risks caused by manually combing the script list, further improving efficiency.

[0065] The technical solution of this embodiment obtains version difference information based on the target version information and current version information of at least one application to be upgraded; the upgrade requirement version information corresponds to the upgrade requirement deployment script one by one; the environment variables in the public configuration file are adjusted based on the version description information; the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list are replaced based on the environment variables in the adjusted public configuration file; for each application to be upgraded, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgrade requirement version information to upgrade and deploy the application to be upgraded. The upgrade deployment method for multiple application software provided in this embodiment completes the upgrade deployment of at least one application to be upgraded based on the upgrade requirement version information list, the upgrade requirement deployment script list and the version description information of each upgrade requirement version in the version difference information, which can improve the efficiency and success rate of the upgrade deployment of multiple application software.

[0066] Embodiment 2

[0067] Figure 2 is a schematic diagram of the structure of a multi-application software upgrade deployment device provided by Embodiment 2 of the present invention, such as Figure 2 As shown, the device comprises:

[0068] The version difference information acquisition module 210 is used to acquire version difference information according to the target version information and current version information of at least one application to be upgraded; wherein the version difference information includes: a list of upgrade requirement version information, a list of upgrade requirement deployment scripts, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script in a one-to-one manner;

[0069] A public configuration file adjustment module 220, configured to adjust environment variables in the public configuration file based on the version description information;

[0070] An upgrade requirement deployment script adjustment module 230 is used to replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the environment variables in the adjusted public configuration file;

[0071] The upgrade requirement script execution module 240 is used to execute the transformed and replaced upgrade requirement deployment scripts in sequence according to the order of the upgrade requirement version information for each application to be upgraded, so as to perform upgrade deployment on the application to be upgraded.

[0072] Optionally, the version difference information obtaining module 210 is further used to:

[0073] For each application to be upgraded, a version information list of the application to be upgraded is obtained; wherein the version information list includes version information of the application to be upgraded arranged according to release time;

[0074] Extracting version information between the target version information and the current version information from the version information list as intermediate version information;

[0075] Arrange the intermediate version information and the target version information according to the release time to obtain a list of version information required for upgrade.

[0076] Optionally, the version difference information obtaining module 210 is further used to:

[0077] Obtain the deployment package of each upgrade requirement version information in the upgrade requirement version information list;

[0078] Decompress the deployment packages respectively to obtain deployment scripts corresponding to the upgrade requirement version information as the upgrade requirement deployment scripts;

[0079] Sort the upgrade requirement deployment scripts according to the release time of the corresponding upgrade requirement version information to obtain an upgrade requirement deployment script list.

[0080] Optionally, the upgrade requirement deployment script adjustment module 230 is further used to:

[0081] Use preset regular expressions to match environment variables in the upgrade requirement script;

[0082] Searching for target environment variables in the adjusted common configuration file based on the matched environment variables;

[0083] Replace the matched environment variables with the target environment variables.

[0084] Optionally, it also includes: a data table generation module, used to:

[0085] Taking a snapshot of the application content of the first data table at set intervals, and writing the obtained multiple application contents into the second data table; wherein the first data table stores the version information of each application currently running, and the first data table is updated in real time; the application content includes an application list and the version information corresponding to each application;

[0086] Among the multiple application contents, a calibration application content is determined every a set number of application contents to obtain multiple calibration application contents;

[0087] Between every two adjacent calibrated application contents, extract the version information of the application in the previous calibrated application content that has been repaired for a vulnerability, obtain the vulnerability repair version information corresponding to each calibrated application content, and write each calibrated application content and its corresponding vulnerability repair version information into a third data table;

[0088] Optionally, the version difference information obtaining module 210 is further used to:

[0089] The version information list of the application to be upgraded is queried from the second data table or the third data table.

[0090] Optionally, the version description information includes first adjustment information of the environment variable from the previous version to the current upgrade required version; the public configuration file adjustment module 220 is further used to:

[0091] Determining second adjustment information of the environment variables in the public configuration file from the current version to the target version based on the first adjustment information of each upgrade requirement version; wherein the second adjustment information includes at least one of the following adjustment methods of the environment variables: modification of the environment variables, deletion of the environment variables, and addition of the environment variables;

[0092] The environment variables in the common configuration file are adjusted based on the second adjustment information.

[0093] Optionally, it also includes: a deployment package generation module for:

[0094] Obtain basic application information, including application name, deployment path of each version of the application, and deployment script directory;

[0095] Get backend and frontend files based on deployment path and version information;

[0096] Get the deployment script corresponding to the version information based on the deployment script directory;

[0097] Package and compress the back-end files, front-end files, and deployment scripts to obtain the deployment package corresponding to the version information.

[0098] The above device can execute the methods provided by all the above embodiments of the present invention, and has the corresponding functional modules and beneficial effects of executing the above methods. For technical details not described in detail in this embodiment, please refer to the methods provided by all the above embodiments of the present invention.

[0099] Embodiment 3

[0100] Figure 3A schematic diagram of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, the connections and relationships between the components, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0101] like Figure 3 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0102] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0103] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as the upgrade deployment of multiple application software.

[0104] In some embodiments, the upgrade deployment of multiple application software can be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the upgrade deployment of multiple application software described above can be performed. Alternatively, in other embodiments, the processor 11 can be configured to perform the upgrade deployment of multiple application software in any other appropriate manner (for example, by means of firmware).

[0105] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0106] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0107] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0108] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0109] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0110] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0111] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0112] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for upgrading and deploying multiple application software, characterized in that: include: Obtaining version difference information according to target version information and current version information of at least one application to be upgraded; wherein the version difference information includes: a list of upgrade requirement version information, a list of upgrade requirement deployment scripts, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script in a one-to-one manner; Adjusting the environment variables in the public configuration file based on the version description information; Replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the adjusted environment variables in the public configuration file; For each application to be upgraded, the upgraded requirement deployment scripts after transformation and replacement are executed in sequence according to the order of the upgraded requirement version information, so as to upgrade and deploy the upgraded application to be upgraded.

2. The method according to claim 1, characterized in that Obtaining a list of upgrade requirement version information according to target version information and current version information of at least one application to be upgraded, including: For each application to be upgraded, obtaining a version information list of the application to be upgraded; wherein the version information list includes version information of the application to be upgraded arranged according to release time; Extracting version information between the target version information and the current version information from the version information list as intermediate version information; The intermediate version information and the target version information are arranged according to the release time to obtain an upgrade requirement version information list.

3. The method according to claim 2, characterized in that Obtaining an upgrade requirement deployment script list according to target version information and current version information of at least one application to be upgraded, including: Obtain a deployment package for each upgrade requirement version information in the upgrade requirement version information list; Decompress the deployment packages respectively to obtain deployment scripts corresponding to the upgrade requirement version information respectively as the upgrade requirement deployment scripts; The upgrade requirement deployment scripts are sorted according to the release time of the corresponding upgrade requirement version information to obtain an upgrade requirement deployment script list.

4. The method according to claim 1, characterized in that: Replacing the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the adjusted environment variables in the public configuration file includes: Match the environment variables in the upgrade requirement script by presetting regular expressions; Searching for target environment variables in the adjusted common configuration file based on the matched environment variables; The matched environment variable is replaced with the target environment variable.

5. The method according to claim 2, characterized in that: Also includes: Taking a snapshot of the application content of the first data table at set intervals, and writing the obtained multiple application contents into the second data table; wherein the first data table stores the version information of each application currently running, and the first data table is updated in real time; the application content includes an application list and the version information corresponding to each application; Among the plurality of application contents, determining a calibration application content every a set number of application contents, to obtain a plurality of calibration application contents; Between every two adjacent calibrated application contents, extract the version information of the application in the previous calibrated application content that has been repaired for a vulnerability, obtain the vulnerability repair version information corresponding to each calibrated application content, and write each calibrated application content and its corresponding vulnerability repair version information into a third data table; Accordingly, obtaining a list of version information of the application to be upgraded includes: The version information list of the application to be upgraded is queried from the second data table or the third data table.

6. The method according to claim 1, characterized in that The version description information includes first adjustment information of the environment variable from the previous version to the current upgrade required version; adjusting the environment variable in the public configuration file based on the version description information includes: Determine second adjustment information of the environment variables in the public configuration file from the current version to the target version based on the first adjustment information of each upgrade requirement version; wherein the second adjustment information includes at least one of the following adjustment methods of the environment variables: modification of the environment variables, deletion of the environment variables, and addition of the environment variables; The environment variables in the public configuration file are adjusted based on the second adjustment information.

7. The method according to claim 1, characterized in that Also includes: Obtaining basic application information; wherein the basic application information includes the application name, deployment path of each version of the application, and deployment script directory; Acquire backend files and frontend files based on the deployment path and the version information; Obtaining a deployment script corresponding to the version information based on the deployment script directory; The back-end file, the front-end file and the deployment script are packaged and compressed to obtain a deployment package corresponding to the version information.

8. An upgrade deployment device for multiple application software, characterized in that: include: A version difference information acquisition module, used to acquire version difference information according to target version information and current version information of at least one application to be upgraded; wherein the version difference information includes: a list of upgrade requirement version information, a list of upgrade requirement deployment scripts, and version description information of each upgrade requirement version; the upgrade requirement version information corresponds to the upgrade requirement deployment script in a one-to-one manner; A public configuration file adjustment module, used to adjust the environment variables in the public configuration file based on the version description information; An upgrade requirement deployment script adjustment module, used to replace the environment variables in each upgrade requirement deployment script in the upgrade requirement deployment script list based on the environment variables in the adjusted public configuration file; The upgrade requirement script execution module is used to execute the transformed and replaced upgrade requirement deployment scripts in sequence according to the order of the upgrade requirement version information for each application to be upgraded, so as to perform upgrade deployment on the application to be upgraded.

9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the upgrade deployment method for multiple application software according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the upgrade deployment method for multiple application software according to any one of claims 1 to 7 when executed.

Citation Information

Cited By

  • Electronic control unit upgrading method and system

    CN120560696A