Software package obtaining method, electronic equipment and readable storage medium

By obtaining the scenario files required by users and obtaining some component packages from the full component package, the problems of high storage resource occupation and long download time caused by full download of software packages are solved, and the effect of resource saving and shortening of download time is achieved.

CN120045193APending Publication Date: 2025-05-27ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311603281.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-24
Publication Date
2025-05-27

AI Technical Summary

Technical Problem

In the prior art, the full download of software packages results in high server storage resources and long download time, which cannot effectively save resource overhead and shorten download time.

Method used

By obtaining the scenario files corresponding to the user's user requirements for the software package, obtain the corresponding partial component package from the full component package, and obtain the software package based on these partial component packages for users to download.

Benefits of technology

Reduces the size of the software package, saves the server's storage resource overhead, and reduces the download time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120045193A_ABST
    Figure CN120045193A_ABST
Patent Text Reader

Abstract

The invention discloses a software package obtaining method, electronic equipment and a readable storage medium. The method comprises the following steps: obtaining a scene file corresponding to a user demand of a user on a software package; acquiring a partial component package corresponding to the scene file from a full component package; and obtaining the software package based on the partial component package for the user to download. According to the embodiment of the invention, the user demand is considered, so that the software package downloaded by the user is not obtained by assembling a full-quantity component package but corresponds to the user demand, the size of the software package is reduced, the overhead of storage resources of a server is saved, and the downloading time is shortened.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and particularly to a method for obtaining a software package, an electronic device, and a readable storage medium. Background Art

[0002] With the development and evolution of Internet technology, users have more and more demands, and various software has become larger and larger. These software are composed of several components.

[0003] A software package is composed of several components. When a user installs software, it is necessary to download the software package containing all components. However, since the full software package is extremely large, the storage resources of the server used to install the software are unnecessarily occupied, and the time required to download the full software package is also extremely long.

[0004] Therefore, in practical applications, a solution that can save the storage resource overhead of the server and reduce the download duration of the software package is needed. Summary of the Invention

[0005] The main purpose of this application is to provide a method for obtaining a software package, an electronic device, and a readable storage medium, aiming to solve the technical problems that the full software package to be downloaded is large, resulting in high storage resource overhead of the server and long download time.

[0006] To achieve the above object, this application provides a method for obtaining a software package, and the method for obtaining the software package includes the following steps:

[0007] Obtain a scenario file corresponding to the user requirements for the software package;

[0008] Obtain a partial component package corresponding to the scenario file from the full component package;

[0009] Obtain the software package based on the partial component package for the user to download.

[0010] Exemplarily, the fields corresponding to the user parameters in the user requirements are partially the same as the fields corresponding to the name identifiers of the component packages.

[0011] Exemplarily, the scenario file includes a combined component package scenario file; one combined component package scenario file corresponds to multiple component packages in the partial component package; the combined component package scenario file is determined based on the user parameters.

[0012] Exemplarily, the component package includes a mandatory component package and an optional component package, the optional component package includes a basic service optional component package and an application, and a dependency relationship is established between the basic service optional component package and the application. The step of obtaining a scenario file corresponding to the user requirements for the software package includes:

[0013] Determine the basic service optional component package based on the user requirements for the software package;

[0014] Obtain dependency parameters from the user requirements;

[0015] Obtain a scenario file with a dependency declaration corresponding to the dependency parameter and a scenario file corresponding to the determined basic service optional component package; the dependency declaration is used to declare the dependency relationship.

[0016] Exemplarily, the user requirements are obtained from the installation command input by the user.

[0017] Exemplarily, obtaining the user requirements for the software package includes:

[0018] Display a main selection interface, and obtain a first operation instruction for the user to perform a selection operation under the main selection interface;

[0019] Display a sub-selection interface corresponding to the first operation instruction, and obtain a second operation instruction for the user to perform a selection operation under the sub-selection interface;

[0020] Use the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user requirements for the software package.

[0021] Exemplarily, the method further includes:

[0022] Obtain a resource file corresponding to the user requirements;

[0023] Determine the hardware resources required for each target component package in the software package based on the one resource file; after the software package is installed, each of the hardware resources is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and a basic service optional component package.

[0024] Exemplarily, after determining the hardware resources required for each target component package in the software package based on the one resource file, it includes:

[0025] Display the quantity of the hardware resources to the user.

[0026] Exemplarily, to achieve the above object, the present application further provides an electronic device, the device includes: a memory, a processor, and a software package acquisition program stored on the memory and executable on the processor, and the software package acquisition program is configured to implement the steps of the software package acquisition method as described above.

[0027] Exemplarily, to achieve the above object, the present application further provides a computer-readable storage medium, on which a software package acquisition program is stored. When the software package acquisition program is executed by a processor, the steps of the software package acquisition method described above are implemented.

[0028] In the related art, due to the particularly large size of the software, the storage resources of the server are unnecessarily occupied. In contrast, in the embodiments of the present application, a scenario file corresponding to the user demand for the software package is obtained; a partial component package corresponding to the scenario file is obtained from the full-component package; and the software package is obtained based on the partial component package for the user to download. That is, the embodiments of the present application consider the user demand, so that the software package downloaded by the user is not assembled from the full-component package, but corresponds to the user demand, thereby reducing the size of the software package, and further saving the storage resource overhead of the server and reducing the download duration. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] Figure 1 It is a schematic flowchart of an embodiment of the software package acquisition method of the present application;

[0030] Figure 2 It is a schematic diagram for an example of the component packages that make up the software in the embodiment of the software package acquisition method of the present application;

[0031] Figure 3 It is a schematic diagram of the scenario file corresponding to the full-component package of the operation and maintenance software in the embodiment of the software package acquisition method of the present application;

[0032] Figure 4 It is a schematic diagram of an improved scenario file in the embodiment of the software package acquisition method of the present application;

[0033] Figure 5 It is a schematic diagram of a main selection interface in the embodiment of the software package acquisition method of the present application;

[0034] Figure 6 It is a schematic diagram of the form of a scenario file in the embodiment of the software package acquisition method of the present application;

[0035] Figure 7 It is a schematic diagram of another main selection interface in the embodiment of the software package acquisition method of the present application;

[0036] Figure 8 It is a schematic diagram of a sub-selection interface in the embodiment of the software package acquisition method of the present application;

[0037] Figure 9 It is a schematic diagram of a resource file in the embodiment of the software package acquisition method of the present application;

[0038] Figure 10Schematic diagram of the form of a resource file in an embodiment of the method for obtaining a software package of the present application;

[0039] Figure 11 Schematic diagram of the display mode of the resources required in an embodiment of the method for obtaining a software package of the present application;

[0040] Figure 12 Schematic diagram of the functional modules of a preferred embodiment of the device for obtaining a software package of the present application;

[0041] Figure 13 Schematic diagram of the structure of the hardware operating environment involved in the solution of the embodiment of the present application.

[0042] The implementation, functional features and advantages of the purpose of the present application will be further described with reference to the embodiments and the accompanying drawings. Detailed implementation manners

[0043] It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0044] It should be noted that the software involved in the embodiments of the present application includes, but is not limited to, engineering software and operation and maintenance software.

[0045] For the convenience of understanding, the embodiments of the present application are briefly described as follows:

[0046] Taking operation and maintenance software as an example, for an operation and maintenance software (also known as operation and maintenance platform software), the operation and maintenance software is a five-in-one network management composed of multiple products (professional networks), and each product is in turn composed of multiple components with different functions, thus forming a complete software version package. When installing the software, components are obtained from the full software package (including the full component package) according to the components configured in the scenario file and installed. Among them, each component package includes several components.

[0047] Among them, components are important elements that make up the software and account for more than 90% of the size of the entire full software package. The components are placed in a subfolder named "sources" under the folder of the full software package.

[0048] Generally, the full set of software components is placed in the "sources" subfolder. When installing the software, after reading the scenario file, the corresponding components are selected from the "sources" subfolder for installation according to the scenario file.

[0049] It can be understood that in the related art, users download the full software package to the local (server), and then install the software according to the corresponding requirements, which requires the local to provide a large amount of storage resources (such as 20G) to store the full software package.

[0050] To avoid unnecessary occupation of the storage resources of the server, the embodiments of the present application propose to first consider the user requirements, obtain a component package that meets the user requirements from the full-component package according to the user requirements, and assemble the component package, so as to obtain a software package that meets the user requirements, rather than the full software package, for the user to download, so that the software package downloaded by the user is not the full software package assembled from the full-component package, but a software package corresponding to the user requirements, thereby reducing the size of the software package, and further saving the overhead of the storage resources of the server and reducing the download duration.

[0051] It should be noted that in the process of obtaining a component package from the full-component package and assembling it to obtain a software package that meets the user requirements, it can be directly obtaining a customized component package that meets the user requirements, or first obtaining the full-component package, assembling it into a full software package, and then obtaining a customized component package that meets the user requirements from the full software package according to the user requirements, so as to obtain a software package that meets the user requirements.

[0052] The present application provides a method for obtaining a software package, Figure 1 which is a schematic flowchart of an embodiment of the method for obtaining a software package of the present application.

[0053] The embodiments of the present application provide embodiments of the method for obtaining a software package. It should be noted that although the logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than here. As Figure 1 shown, the method for obtaining a software package includes:

[0054] Step S110, obtaining a scenario file corresponding to the user requirements for the software package.

[0055] It should be noted that several components can be combined like building blocks to obtain software, and the list of components used to form the software is the component list. And for different user requirements, the corresponding software is applied to different requirement scenarios. Therefore, this component list is also called a scenario file.

[0056] It should be noted that the above operation and maintenance software is a software with a microservice architecture. Each microservice is relatively independent, but there are also dependency relationships at the same time. For example, the software includes component packages such as "platform", "application A", and "basic business", where the "application A" component package depends on the "basic business" component package, and the "basic business" component package depends on the "platform" component package. Among them, the "basic business" component package and the "platform" component package belong to the basic component packages, and the "application A" component package belongs to the optional component packages.

[0057] It should be noted that the components in the "platform" component package are basic components without business logic, which are used to implement the most basic functions such as connecting to the database, providing a data bus, caching, and security authentication. Usually, these microservices must be installed, and most other microservices need to depend on these microservices. The components in the "basic business" component package are used to provide basic software services or components containing common business logic. These microservices usually must also be installed and will be relied on by other microservices. The applications at a higher level (such as Application A, Application B, Application C, etc.) are relatively independent, providing independent functions, and there is no dependency relationship between the applications.

[0058] It can be understood that according to this feature, the scenario files are shown in Table 1 below, where each box represents a scenario file (the same hereinafter):

[0059] Table 1

[0060] Scenario 1: Platform components; Basic business components; Application A; Application C; Application F Scenario 2: Platform components; Basic business components; Application A; Application B; Application E Scenario 3: Platform components; Basic business components; Application D

[0061] In the above Table 1, 3 scenarios are shown. Among them, the platform components and the basic business components are mandatory components that provide basic functions, while the applications can be configured according to business requirements and can be regarded as optional components, and the optional components have the property of being optional.

[0062] In some embodiments, for complex scenarios, the basic business components can be reclassified by category. According to the category, some of the basic business components are also optional. The applications at a higher level can also be divided into several categories according to the category. Figure 2 For an illustrative schematic diagram of the component packages that make up the software, as Figure 2 shown, the platform components and the basic business common components provide basic functions and are mandatory to install, and all other component packages are optional.

[0063] It should be noted that the scenario files can be nested, that is, each component package is composed of 1 to N different microservice components, as shown in Table 2:

[0064] Table 2

[0065] Platform component package: Component 1; Component 2;...... Basic business common component package: Component 3; Component 4;...... Basic business optional component package 1: Component 5; Component 6;...... Optional component package 1 (for Application A): Component 7; Component 8;......

[0066] Among them, the platform component package includes Component 1, Component 2, etc. These Component 1 and Component 2 are microservice components. For different microservice components in the platform component package, they are used to implement different functions of the platform. That is, different components are constructed according to the functions to be implemented. Correspondingly, the microservice components in the basic business common component package, the basic business optional component package 1, and the optional component package 1 are basically the same as the microservice components in the platform component package, and will not be elaborated here.

[0067] It can be understood, Figure 2The corresponding scenario file is shown in Table 3 below. Among them, the corresponding relationship is Figure 2 The component package in can be obtained by tailoring the component library through the scenario file in Table 3. The Figure 2 component package in is a full-component package:

[0068] Table 3

[0069]

[0070] For Table 3, the scenario file is used to obtain multiple component packages through tailoring (i.e., platform component package, basic business common component package, basic business optional component package 1, basic business optional component package 2, basic business optional component package 3, optional component package 1, optional component package 2, optional component package 3, and optional component package 4). Among them, which components are specifically included in each component package can be determined by the user after tailoring. For example, the full platform component package includes Component 1 and Component 2. If the user tailors off Component 1, then finally this platform component package only includes Component 2 and does not include Component 1. Optionally, each component package includes all components by default. If the user does not perform tailoring, then the component package that makes up the software package includes all components of this component package.

[0071] Exemplarily, according to user requirements, Table 3 can be tailored to Table 4:

[0072] Table 4

[0073]

[0074] For Table 4, based on the above full-component package, according to user requirements, the full-component package can be tailored through the scenario file, so as to obtain partial component packages that meet user requirements, and finally obtain a software package that meets user requirements.

[0075] It can be understood that Scenario 1 and Scenario 2 in Table 4 each meet a user requirement. Among them, through the scenario file corresponding to Scenario 1, the full-component package can be tailored, and partial component package 1 can be obtained. This partial component package 1 includes the platform component package, the basic business common component package, the basic business optional component package 1, and the basic business optional component package 2. And through the scenario file corresponding to Scenario 2, the full-component package can be tailored, and partial component package 2 can be obtained. This partial component package 2 includes the platform component package, the basic business common component package, the basic business optional component package 1, the basic business optional component package 2, optional component package 1, and optional component package 2.

[0076] It should be noted that taking the operation and maintenance software for various operation and maintenance personnel as an example, this operation and maintenance software can provide unified management capabilities for multiple products such as wireless, core network, bearer, fixed network, and cloud management (corresponding to the above basic service optional component packages). For different users, their requirements may be one or more of these multiple products. For example, the requirements of user A are the management functions of wireless and core network, and the requirements of user B are the management functions of bearer and fixed network. Correspondingly, the scenario files corresponding to user A include the scenario files corresponding to wireless and the scenario files corresponding to core network, and the scenario files corresponding to user B include the scenario files corresponding to bearer and the scenario files corresponding to fixed network.

[0077] Figure 3 It is a schematic diagram of the scenario files corresponding to the full-component package of this operation and maintenance software. Refer to Figure 3 , where each box represents a scenario file. For example, "platform", "southbound", and "public" respectively represent a scenario file. "Southbound" and "public" correspond to the above basic service common component packages, and the remaining extension packages and "intelligent component packages" correspond to the above respective applications. It can be understood that the corresponding component package can be obtained through this scenario file. For example, if the scenario file is "platform", then the component package corresponding to "platform" is obtained. Correspondingly, in the process of assembling component packages to obtain a software package, this operation and maintenance software is composed of multiple mandatory component packages + one or more optional component packages. Among them, the mandatory component packages must be installed. The mandatory component packages include the platform component package and the basic service common component package; the optional component packages are optional, that is, they do not have to be installed, and they can be selected according to user requirements. The optional component packages include the basic service optional component packages and applications.

[0078] It should be noted that for this operation and maintenance software, due to the diverse user requirements, even under the strict access control mechanism, nearly 50 scenario files have been provided. This makes the process relatively complex when users install software using scenario files. That is, when users install software, they need to specify multiple scenario files according to actual needs, resulting in very poor usability.

[0079] To address the problem of poor usability, the embodiment of this application proposes a solution to simplify scenario files, thereby improving the usability of scenario files. Specifically, the fields corresponding to the user parameters in the user requirements are partially the same as the fields corresponding to the name identifiers of the component packages. It can be understood that the name identifier is the name that identifies each component package. For example, the field corresponding to the name identifier of the "platform" component package is "platform".

[0080] It should be noted that user parameters are used to specify the component packages they need.

[0081] For example, if the user requirements are input through an installation command, and the installation command is "nohup oki-cli install --scene platform.scene...", then the fields corresponding to the user parameters include "platform", that is, "nohup oki-cli install --scene". ".scene" is the part that is not a user parameter, and "platform" is the user parameter part. It can be understood that there is a component package with a name identifier corresponding to the field "platform". If the field corresponding to the user parameter in the installation command only contains "platform", then at this time, it can be considered that the user parameter is the same as the name identifier of the component package. Another example is that the installation command is "nohup oki-cli install --scene platform+wireless.scene, wireless enhanced extension package.scene", then the fields corresponding to the user parameters are "platform+wireless" and "wireless enhanced extension package". It can be understood that there is a component package with a name identifier corresponding to the field "wireless enhanced extension package", but there is no component package with a name identifier corresponding to the field "platform+wireless". At this time, it can be considered that the fields corresponding to the user parameters are partially the same as the fields corresponding to the name identifier, rather than completely the same.

[0082] In one exemplary embodiment, the scenario file includes a combined component package scenario file; one of the combined component package scenario files corresponds to multiple component packages in the partial component packages; the combined component package scenario file is determined based on the user parameters. Figure 4 For a schematic diagram of an improved scenario file, refer to Figure 4 , where "two-in-one", "three-in-one", and "five-in-one" each represent a scenario file. It can be understood that the scenario file represented by "two-in-one" is a combination of the original five scenario files of "platform", "southbound", "public", "wireless", and "core network". Among them, since "platform", "southbound", and "public" are mandatory component packages and are installed by default when installing the software, therefore, whether the user installs through the installation command or through the visual interface, there is no need to specify the installation of any mandatory component package, and the user only needs to specify the optional component packages.

[0083] It should be noted that the scenario file is a combined component package scenario file; or the scenario file further includes a single component package scenario file, and the scenario file is assembled from the combined component package scenario file and the single component package scenario file. Among them, a single component package scenario file corresponds to one component package in the above partial component packages.

[0084] Exemplarily, the user requirements are obtained from the installation command input by the user.

[0085] For example, the installation command is: nohup oki-cli install --scene wireless + core network + bearer.scene, wireless enhanced extension package.scene, wireless northbound extension package.scene, core network enhanced extension package.scene, core network northbound extension package.scene. Then the user's requirement is to install these component packages of "wireless", "core network", "bearer", "wireless enhanced extension package", "wireless northbound extension package", "core network enhanced extension package", and "core network northbound extension package" in the software.

[0086] It should be noted that since the installation command requires user input and there are many scenario files, the installation command is relatively complex. Therefore, it is easy for the user to make mistakes when entering the installation command, which may easily lead to the installation of incorrect component packages. However, since the scenario files in the embodiments of the present application are simplified, the accuracy of the installation command can be well improved.

[0087] Exemplarily, obtaining the user's requirement for the software package includes: displaying a main selection interface, and obtaining a first operation instruction for the user to perform a selection operation under the main selection interface; displaying a sub-selection interface corresponding to the first operation instruction, and obtaining a second operation instruction for the user to perform a selection operation under the sub-selection interface; using the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user's requirement for the software package.

[0088] Refer to Figure 5 , Figure 5 FIG. is a schematic diagram of a main selection interface. In this embodiment, the main selection interface is used to select the combined component package scenario file, and the sub-selection interface is used to select the single component package scenario file. In Figure 5 , the user selects "wireless and core network" on the main selection interface. Then, the user needs to select "enhanced extension package", "northbound extension package", etc. on the sub-selection interface, and further select the corresponding component packages from the "wireless enhanced extension package" component package, "core network enhanced extension package" component package, and "bearer enhanced extension package" component package corresponding to the "enhanced extension package". It should be noted that in addition to Figure 5 the main selection interface shown, in other embodiments of the main selection interface, each optional component package can also be selected by the user separately. For example, when the user needs to select "two-in-one", that is, when the user needs to select "wireless and core network", the user can select "wireless" and "core network" respectively.

[0089] It should be noted that since there are many scenario files, the sub-selection interface is relatively complex and the user selection process is relatively complex. Therefore, it is easy for the user to make mistakes when entering the second operation instruction, which may easily lead to the installation of incorrect component packages. However, since the scenario files in the embodiments of the present application are simplified, the accuracy of the component packages selected by the user can be well improved.

[0090] In another exemplary embodiment, the component package includes a mandatory component package and an optional component package. The optional component package includes a basic service optional component package and an application. A dependency relationship is established between the basic service optional component package and the application. Obtaining the scenario file corresponding to the user requirements for the software package includes: determining the basic service optional component package based on the user requirements for the software package; obtaining dependency parameters from the user requirements; obtaining the scenario file with the dependency declaration corresponding to the dependency parameters and the scenario file corresponding to the determined basic service optional component package; and the dependency declaration is used to declare the dependency relationship.

[0091] It should be noted that in the embodiment of the present application, a dependency relationship is utilized. Figure 6 is a schematic diagram of the form of a scenario file. Refer to Figure 6 , where 601 is the total scenario file, 602 is the "Wireless" component package; 603 is the "Enhanced Expansion Package" component package, and 604 is the "Wireless Enhanced Expansion Package" component package. It should be noted that different from the existing situation where each component package corresponds to a scenario file, in the embodiment of the present application, there is a total scenario file. When a scenario file is needed, the total scenario file is selected by inputting selection parameters. The selection parameters can be input through an installation command or through operation instructions corresponding to a visual interface (including a main selection interface and a sub-selection interface). In addition, there is also a dependency declaration in the scenario file corresponding to the "Wireless Enhanced Expansion Package" component package 604. The declaration "Dependency: Wireless" in this scenario file indicates that there is a dependency relationship between the "Wireless Enhanced Expansion Package" component package and the "Wireless" component package. It should be noted that the dependency parameters are the fields corresponding to the combined parameters of the name identifiers of the mandatory component package and the name identifiers of the optional component package. Among them, the dependency relationship affects the display content in the sub-selection interface.

[0092] Exemplarily, the user requirements are obtained from the installation command input by the user.

[0093] For example, the installation command is: nohup oki-cli install --scene the overall scene file.scene wireless + core network + enhanced extension package + northbound extension package. It can be understood that in this installation command, only one scene file is involved, namely "the overall scene file", and the other "wireless", "core network", "enhanced extension package", and "northbound extension package" are fields corresponding to user parameters. The fields corresponding to dependent parameters include "wireless", "enhanced extension package", "wireless", "northbound extension package", "core network", "enhanced extension package", and "core network", "northbound extension package". From this, it can be obtained that the user's requirement is to install the mandatory component package, "wireless" component package, "wireless enhanced extension package" component package, "wireless northbound extension package" component package, "core network" component package, "core network enhanced extension package" component package, and "core network northbound extension package" component package in the software.

[0094] It should be noted that since the installation command requires user input and there are many scene files, the installation command is relatively complex. Therefore, it is easy for users to make mistakes when entering the installation command, which may easily lead to the installation of incorrect component packages. However, since the scene files in the embodiments of the present application are simplified, the accuracy of the installation command can be well improved.

[0095] Exemplarily, the obtaining of the user's requirement for the software package includes: displaying a main selection interface, and obtaining a first operation instruction for the user to perform a selection operation under the main selection interface; displaying a sub-selection interface corresponding to the first operation instruction, and obtaining a second operation instruction for the user to perform a selection operation under the sub-selection interface; and using the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user's requirement for the software package.

[0096] Refer to Figure 7 , Figure 7 For another schematic diagram of the main selection interface. After the user selects "wireless" and "core network" on the main selection interface, a sub-selection interface is displayed. Refer to Figure 8 . After the user selects "enhanced extension package" and "northbound extension package" on the sub-selection interface, it can be determined that the user's requirement is to install the mandatory component package, "wireless" component package, "wireless enhanced extension package" component package, "wireless northbound extension package" component package, "core network" component package, "core network enhanced extension package" component package, and "core network northbound extension package" component package in the software.

[0097] It should be noted that due to the large number of scenario files, the sub-selection interface is relatively complex, and the user selection process is also relatively complex. Therefore, it is easy for users to make mistakes when entering the second operation instruction, which may easily lead to the installation of incorrect component packages. However, since the scenario files in the embodiments of the present application are simplified, the accuracy of the component packages selected by users can be well improved.

[0098] Step S120: Obtain the partial component packages corresponding to the scenario file from the full-component packages.

[0099] In this embodiment, the partial component packages are obtained by trimming the full-component packages through the scenario file.

[0100] Step S130: Obtain the software package based on the partial component packages for the user to download.

[0101] It should be noted that in addition to component packages, the software package also includes configuration files, tools, etc.

[0102] Exemplarily, the method further includes: obtaining a resource file corresponding to the user requirement; determining the hardware resources required for each target component package in the software package based on the resource file; after the software package is installed, each hardware resource is consumed by the target component corresponding to the corresponding target component package during operation; the target component packages include mandatory component packages and basic service optional component packages.

[0103] It should be noted that taking the operation and maintenance software as an example, different management scales will be distinguished according to the different numbers of devices managed by the operation and maintenance platform software (operation and maintenance software). For example, management scale 1 can manage up to 10 devices at most, and management scale 2 can manage up to 30 devices at most. Currently, for different requirements, the operation and maintenance platform software mainly realizes the deployment of various management scales by specifying different resource files (used to set different CPUs, memories, disks, instance numbers, etc.). The resource file defines the hardware resources required during the operation after the software is installed. See Figure 9 , Figure 9 for the schematic diagram of the resource file. It can be understood that similar to the scenario file, Figure 9 one box in corresponds to one resource file. For example, "platform scale 1" is a resource file, and "public scale 1" is also a resource file. The resource file can also be determined by means of installation commands or by displaying corresponding interfaces.

[0104] Taking the installation command to determine the resource files and one scenario file corresponding to multiple component packages as an example, the installation command can be: nohup oki-cli install --scene wireless + core network + bearer.scene, wireless enhanced extension package.scene, wireless northbound extension package.scene, core network enhanced extension package.scene, core network northbound extension package.scene --resource platform component 1_scale 1.resource, platform component 2_scale 1.resource, southbound component_scale 1.resource, common component_scale 1.resource, wireless component_scale 1.resource, core network component_scale 1.resource &. It is not difficult to find that the resource files have similar usability problems and error-prone problems as the scenario files.

[0105] To address the above problems, the embodiments of the present application define resource lists of different scales in the scenario file: Resources:

[0106] Scale 1: Platform scale 1; Southbound scale 1; Common scale 1; Wireless scale 1; Core network scale 1; Bearer scale 1; Fixed network scale 1; Cloud management scale 1.

[0107] Scale 2: Platform scale 2; Southbound scale 2; Common scale 2; Wireless scale 2; Core network scale 2; Bearer scale 2; Fixed network scale 2; Cloud management scale 2.

[0108] Scale 3: Platform scale 3; Southbound scale 3; Common scale 3; Wireless scale 3; Core network scale 3; Bearer scale 3; Fixed network scale 3; Cloud management scale 3.

[0109] Figure 10 For a schematic diagram of the form of a resource file, refer to Figure 10 , 1001 is the total scenario file, and 1002 is the "wireless scale 1" resource file. It can be understood that the "wireless scale 1" resource file can also add a dependency description, that is, the "wireless scale 1" resource file declares a dependency on the "wireless" component package. Only when the "wireless" component package is selected, the "wireless scale 1" resource file will take effect and take effect automatically. In addition, in the "wireless scale 1" resource file, there is also the resource definition of this scale, that is, under this "wireless scale 1", how many hardware resources can be allocated. For example, in the "wireless scale 1" resource file, 50 vCPUs (virtual central processing units), 20G of memory, and 10T of hard disk are defined.

[0110] Therefore, only by specifying one resource file, that is, "scale 1", "scale 2", or "scale 3", etc., can the selection of resources corresponding to all component packages be completed through dependency declarations.

[0111] For example, the installation command can be: nohup oki-cli install --scene total_scene_file.scene wireless + core network + bearer + fixed network + cloud management --resource scale 1 &. Through this installation command, it can be determined that the resource scale of the "wireless" component package is wireless scale 1, the resource scale of the "core network" component package is core network scale 1, the resource scale of the "bearer" component package is bearer scale 1, the resource scale of the "fixed network" component package is fixed network scale 1, and the resource scale of the "cloud management" component package is cloud management scale 1.

[0112] Exemplarily, after determining the hardware resources required for each target component package in the software package based on the one resource file, it includes: presenting the quantity of the hardware resources to the user.

[0113] Figure 11 It is a schematic diagram of the display mode of the required resources. Refer to Figure 11 , after the user determines the hardware resources, the specific quantity of the required hardware resources can also be presented in a visual way. The specific quantity is a numerical range, that is, the quantity of the hardware resources consumed when the software is running falls within this numerical range. Thus, it is convenient for the user to clarify whether the maximum hardware resources of the server used to run the software meet the requirements of the required hardware resources.

[0114] In addition, Figure 12 It is a schematic diagram of the functional modules of the preferred embodiment of the software package acquisition device of the present application. Refer to Figure 12 , the present application also provides a software package acquisition device. The software package acquisition device includes:

[0115] A first acquisition module 1210, configured to acquire a scene file corresponding to the user requirements for the software package of the user;

[0116] A second acquisition module 1211, configured to acquire partial component packages corresponding to the scene file from the full-component packages;

[0117] An acquisition module 1212, configured to acquire the software package based on the partial component packages for the user to download.

[0118] Exemplarily, the fields corresponding to the user parameters in the user requirements are partially the same as the fields corresponding to the name identifiers of the component packages.

[0119] Exemplarily, the scene file includes a combined component package scene file; one combined component package scene file corresponds to multiple component packages in the partial component packages; the combined component package scene file is determined based on the user parameters.

[0120] Exemplarily, the component package includes a mandatory component package and an optional component package. The optional component package includes a basic service optional component package and an application. A dependency relationship is established between the basic service optional component package and the application.

[0121] The first acquisition module 1210 is specifically configured to:

[0122] Determine the basic service optional component package based on the user requirements for the software package;

[0123] Obtain a dependency parameter from the user requirements;

[0124] Obtain a scenario file with a dependency declaration corresponding to the dependency parameter and a scenario file corresponding to the determined basic service optional component package; the dependency declaration is used to declare the dependency relationship.

[0125] Exemplarily, the user requirements are obtained from the installation command input by the user.

[0126] Exemplarily, the first acquisition module 1210 is specifically configured to:

[0127] Display a main selection interface, and obtain a first operation instruction for the user to perform a selection operation under the main selection interface;

[0128] Display a sub-selection interface corresponding to the first operation instruction, and obtain a second operation instruction for the user to perform a selection operation under the sub-selection interface;

[0129] Use the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user requirements for the software package;

[0130] Obtain a scenario file corresponding to the user requirements.

[0131] Exemplarily, the device further includes:

[0132] A third acquisition module, configured to obtain a resource file corresponding to the user requirements;

[0133] A determination module, configured to determine the hardware resources required for each target component package in the software package based on the resource file; after the software package is installed, each hardware resource is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and a basic service optional component package.

[0134] Exemplarily, the device further includes:

[0135] A display module, configured to display the quantity of the hardware resources to the user.

[0136] The specific implementation manner of the software package acquisition device of this application is basically the same as each embodiment of the above software package acquisition method, and will not be elaborated here.

[0137] In addition, this application also provides an electronic device. As Figure 13 shown, Figure 13 is a schematic structural diagram of the hardware operating environment involved in the solution of the embodiment of this application.

[0138] Exemplarily, Figure 13 it can be a schematic structural diagram of the hardware operating environment of the electronic device.

[0139] As Figure 13 shown, the electronic device may include a processor 1301, a communication interface 1302, a memory 1303, and a communication bus 1304. Among them, the processor 1301, the communication interface 1302, and the memory 1303 complete mutual communication through the communication bus 1304. The memory 1303 is used to store a computer program; when the processor 1301 executes the program stored on the memory 1303, it implements the steps of the software package acquisition method.

[0140] The communication bus 1304 mentioned in the above electronic device may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus 1304 can be divided into an address bus, a data bus, a control bus, etc. For the sake of simplicity of representation, only a thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.

[0141] The communication interface 1302 is used for communication between the above electronic device and other devices.

[0142] The memory 1303 may include a Random Access Memory (RMD), and may also include a Non-Volatile Memory (NM), such as at least one disk memory. Optionally, the memory 1303 may also be at least one storage device located far from the aforementioned processor 1301.

[0143] The above-mentioned processor 1301 may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0144] The specific implementation manner of the electronic device in this application is basically the same as that of the above-mentioned embodiments of the software package acquisition method, and will not be elaborated here.

[0145] In addition, an embodiment of this application also proposes a computer-readable storage medium, on which a software package acquisition program is stored. When the software package acquisition program is executed by a processor, the steps of the software package acquisition method described above are implemented.

[0146] The specific implementation manner of the computer-readable storage medium of this application is basically the same as that of the above-mentioned embodiments of the software package acquisition method, and will not be elaborated here.

[0147] It should be noted that in this article, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements not only includes those elements, but also includes other elements not expressly listed, or also includes elements inherent to such process, method, article or system. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of another identical element in the process, method, article or system including that element.

[0148] The serial numbers of the above-mentioned embodiments of this application are only for description and do not represent the advantages or disadvantages of the embodiments.

[0149] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-described example methods can be implemented by means of software plus a necessary general hardware platform. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium as described above (such as ROM / RAM, magnetic disk, optical disc), and includes several instructions for causing a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of the present application.

[0150] The above are only the preferred embodiments of the present application, and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made by using the content of the specification and drawings of the present application, or directly or indirectly applied in other related technical fields, shall be equally included in the patent protection scope of the present application.

Claims

1. A method for obtaining a software package, characterized in that, the method for obtaining the software package includes the following steps: Obtain a scenario file corresponding to the user requirements for the software package; Obtain a partial component package corresponding to the scenario file from the full-component package; Obtain the software package based on the partial component package for the user to download.

2. The method for obtaining a software package according to claim 1, characterized in that, the fields corresponding to the user parameters in the user requirements are partially the same as the fields corresponding to the name identifiers of the component packages.

3. The method for obtaining a software package according to claim 2, characterized in that, the scenario file at least includes a combined component package scenario file; one combined component package scenario file corresponds to multiple component packages in the partial component package; the combined component package scenario file is determined based on the user parameters.

4. The method for obtaining a software package according to claim 2, characterized in that, the component package includes a mandatory component package and an optional component package, the optional component package includes a basic service optional component package and an application, and a dependency relationship is established between the basic service optional component package and the application. Obtaining the scenario file corresponding to the user requirements for the software package includes: Determine the basic service optional component package based on the user requirements for the software package; Obtain a dependency parameter from the user requirements; Obtain a scenario file with a dependency declaration corresponding to the dependency parameter and the scenario file corresponding to the determined basic service optional component package; the dependency declaration is used to declare the dependency relationship.

5. The method for obtaining a software package according to any one of claims 2-4, characterized in that, the user requirements are obtained from the installation command input by the user.

6. The method for obtaining a software package according to any one of claims 2-4, characterized in that, obtaining the user requirements for the software package includes: Display a main selection interface and obtain a first operation instruction for the user to perform a selection operation under the main selection interface; Display a sub-selection interface corresponding to the first operation instruction and obtain a second operation instruction for the user to perform a selection operation under the sub-selection interface; Use the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user requirements for the software package.

7. The method for obtaining a software package according to claim 5 or 6, characterized in that, the method further includes: Obtain a resource file corresponding to the user requirements; Determine the hardware resources required for each target component package in the software package based on the resource file; After the software package is installed, each hardware resource is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and a basic service optional component package.

8. The method for obtaining a software package according to claim 7, characterized in that, after determining the hardware resources required for each target component package in the software package based on the resource file, it includes: Display the quantity of the hardware resources to the user.

9. An electronic device, characterized in that, The electronic device includes: a memory, a processor, and a software package acquisition program stored on the memory and executable on the processor, the software package acquisition program being configured to implement the steps of the software package acquisition method according to any one of claims 1 to 8.

10. A computer-readable storage medium, characterized in that, a software package acquisition program is stored on the computer-readable storage medium, and when the software package acquisition program is executed by a processor, the steps of the software package acquisition method according to any one of claims 1 to 8 are implemented.