CN116719555B - Promotion and distribution system and method for software product package and metadata - Google Patents

Promotion and distribution system and method for software product package and metadata Download PDF

Info

Publication number
CN116719555B
CN116719555B CN202310926574.0A CN202310926574A CN116719555B CN 116719555 B CN116719555 B CN 116719555B CN 202310926574 A CN202310926574 A CN 202310926574A CN 116719555 B CN116719555 B CN 116719555B
Authority
CN
China
Prior art keywords
management
module
promotion
metadata
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310926574.0A
Other languages
Chinese (zh)
Other versions
CN116719555A (en
Inventor
花磊
徐新平
靳亮
靳立成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Boyun Technology Co ltd
Original Assignee
Jiangsu Boyun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Boyun Technology Co ltd filed Critical Jiangsu Boyun Technology Co ltd
Priority to CN202310926574.0A priority Critical patent/CN116719555B/en
Publication of CN116719555A publication Critical patent/CN116719555A/en
Application granted granted Critical
Publication of CN116719555B publication Critical patent/CN116719555B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

The application relates to the technical field of software product management, in particular to a promotion and distribution system and method of software product package and metadata, wherein the system comprises: the package management module is used for uploading and downloading, storing and organizing the software package, controlling version and managing metadata; a promotion and distribution module for providing promotion and distribution functions for the software product package; the security and authority module is used for providing security and authority management functions for the software product package, including access control, security audit and log record; and the integration and expansion module is used for providing integration and expansion functions of the product management system, including providing API and SDK interfaces and plug-in and expansion mechanisms. The application effectively solves the problems of version management, storage and organization, security and access control and metadata management in the product management system.

Description

Promotion and distribution system and method for software product package and metadata
Technical Field
The application relates to the technical field of software product management, in particular to a promotion and distribution system and method for software product packages and metadata.
Background
In the software development and IT industry, an artifact management system is a very important component that is intended to help developers effectively manage and track the version, build and distribution of software artifacts. Currently, there are many product management systems on the market, including Artifactory, FOLIB pastures, nexus, and artifacts Hub, among others.
Existing product management systems generally provide the following functions: version control and management: versions and builds of software products are tracked and managed to ensure that the correct versions are used during development and deployment. Storage and organization: the software products are stored in a central repository for ease of use and management by developers and operation and maintenance personnel. Security and access control: security mechanisms and access control are provided to ensure that only authorized users can access and download software products. Metadata management: metadata of the software product, such as version, dependency, license, etc., is managed to facilitate use and management by the developer and the operation and maintenance personnel. Automated construction and deployment: integrated with CI/CD tools, support automated build, test, and deployment of software products.
However, in existing product management systems, there are problems that may affect promotion and distribution efficiency of software product packages and metadata, including but not limited to the following:
version management problem: in the software development process, multiple versions may be developed in parallel, which requires an effective version control and management mechanism to ensure the correctness and traceability of each version. However, the prior art may have the following problems in version management: (1) version conflict: if different teams develop the same version at the same time, version conflict problems may be caused, and manual resolution is required. Version confusion: in complex development and construction environments, version confusion problems may occur, resulting in the inability to properly identify and manage different versions of software products.
Storage and organization problems: the prior art typically stores software products in a central repository for ease of management and access. However, in terms of storage and organization, the following problems may exist: (1) a storage bottleneck: if the storage capacity is insufficient or the storage mode is unreasonable, storage bottleneck problems can be caused, and the distribution and upgrading efficiency of the software products can be affected. (2) tissue confusion: if the storage and organization is not standard or has no clear structure, the organization of the software products may be confused and difficult to identify and manage.
Security and access control issues: in the prior art, security and access control are a very important ring to ensure the security and confidentiality of software products. However, the following problems may exist in terms of security and access control: (1) access control is not fine: if the access control settings are not fine enough, it may result in access to sensitive information by unauthorized persons. (2) security vulnerabilities: if a vulnerability exists in a system storing and managing software products, the system may be hacked, resulting in important information leakage.
Metadata management problem: metadata management is a very important ring in the promotion and distribution of software packages and metadata. However, the prior art may have the following problems in metadata management: (1) metadata errors: if the metadata information is inaccurate or non-canonical, incompatibility or errors in the software product package may result, affecting the use and upgrade efficiency of the software product. (2) metadata redundancy: storage resources may be wasted if metadata information is redundant or duplicated.
In summary, how to solve the version management problem, the storage and organization problem, the security and access control problem, and the metadata management problem existing in the product management system is a problem to be solved at present.
Disclosure of Invention
The application provides a promotion and distribution system and method of software product package and metadata, which can solve the problems of version management, storage and organization, security and access control and metadata management in a product management system. The application provides the following technical scheme:
in a first aspect, the present application provides a promotion and distribution system for software packages and metadata, the system comprising:
the package management module is used for uploading and downloading, storing and organizing the software package, controlling version and managing metadata;
a promotion and distribution module for providing promotion and distribution functions for the software product package;
the security and authority module is used for providing security and authority management functions for the software product package, including access control, security audit and log record;
and the integration and expansion module is used for providing integration and expansion functions of the product management system, including providing API and SDK interfaces and plug-in and expansion mechanisms.
In a specific embodiment, the package management module comprises:
product package uploading and downloading submodule: for supporting uploading and downloading product packages and providing various uploading and downloading modes, including HTTP, FTP, SCP and the like;
package storage and organization sub-module: the system is used for supporting the storage of the product package into the object storage and providing flexible organization structure and directory management function;
the package version control submodule: the system is used for carrying out version control by adopting a distributed version control system;
the product package metadata management sub-module: for metadata management using a metadata management platform.
In a specific embodiment, the promotion and distribution module includes:
product package promotion sub-module: the system is used for supporting promotion operation on the product package and providing definition and management of promotion flow and promotion strategy;
product package distribution sub-module: for supporting distribution of the product packages into different environments and providing flexible distribution policies and rule settings.
In a specific embodiment, the security and rights module comprises:
the access control sub-module: the method is used for carrying out access control and authority management by adopting an RBAC model;
security audit and logging sub-module: the method is used for providing security audit and log recording functions and recording operations such as uploading, downloading, modifying and the like of the product package.
In a specific embodiment, the integration and extension module comprises:
API and SDK interface submodule: API and SDK interfaces for providing version control, promotion and distribution, security and authority functions, and supporting integration with other systems;
plug-in and expansion sub-module: the system is used for providing plug-in and extension mechanisms, supporting custom development and integration of third-party plug-ins and extending the functions of the product management system.
In a specific embodiment, the fabric design of the package management module comprises:
and the product package storage module is as follows: the system is used for storing various product packages and metadata information thereof, adopts a distributed storage scheme, and realizes data backup and fault tolerance through a plurality of nodes;
metadata management module: the method is used for managing metadata in the product package, comprises operations of defining, storing, inquiring and the like of the metadata, adopts a scheme based on a relational database, stores metadata information in the database, and realizes efficient inquiring through a custom inquiry language;
version control module: the system is used for meeting the requirement of a user on the version control of the product package, adopts a self-grinding module, integrates the version control of the product package into a product package management module, and realizes the version control function through a self-defined version control algorithm;
and the permission management module is used for: the system is used for managing the operation authority of a user in the module, comprises the functions of user login authentication, user role definition, operation authority allocation and the like, adopts a role-based access control scheme, and realizes the control of the user authority through the role definition and the authority allocation;
product package inquiry module: the method is used for meeting the query requirement of a user on the product package, an elastic search-based scheme is adopted, the metadata information of the product package is indexed, and an efficient query function is realized through a query interface provided by the elastic search;
version control storage module: the system is used for storing the product package information of each version and related metadata, and adopts a distributed storage scheme to realize the backup and fault tolerance of data through a plurality of nodes.
In a specific embodiment, the architecture design of the promotion and distribution module includes:
front end layer: the system is used for displaying the information of the promotion and distribution tasks, progress and the like, and providing an interactive interface for the user to operate;
rear end layer: the system is used for processing the information such as the task, progress and the like of promotion and distribution and storing the information into a database;
service layer: the system is used for encapsulating business logic and accessing a database and providing an interface for front-end layer calling;
message queue layer: the system is used for carrying out asynchronous processing on the tasks of promotion and distribution, and improving concurrency capability and reliability of the system;
storage layer: for storing the information such as the product package, the metadata and the log generated in the promotion and distribution process, common database systems such as MySQL, oracle and the like can be selected.
In a specific embodiment, the architecture design of the security and rights module comprises:
the user authority management module: the system is used for managing the access rights of the user, including roles, organization, resource access rights and the like of the user;
and a data security management module: the system is mainly responsible for ensuring the security of data, including encryption storage, access control, audit and the like;
and the log management module is used for: the system is used for recording the running log of the system, including performance indexes, error information and the like.
In a specific embodiment, the architecture design of the integration and extension module includes:
and (3) an integration module: the system is used for integrating the product management system into other systems or tools to realize sharing and interaction of data, and comprises an API interface, a plug-in framework and an integrated management interface;
and an expansion module: the method is used for expanding the functions of the product management system, meets the personalized requirements of users, and comprises the steps of customizing labels, customizing workflow, providing report and analysis functions and providing an expanded management interface.
In a second aspect, the present application provides a software product package and metadata promotion and distribution method, the method being applied to a software product package and metadata promotion and distribution system, the method comprising:
uploading and downloading, storing and organizing, version control and metadata management are carried out on the software product package;
providing promotion and distribution functions for software packages;
providing security and rights management functions for software product packages, including access control, security audit and log records;
providing integration and extension functionality to the artifact management system, including providing API and SDK interfaces and plug-in and extension mechanisms.
In summary, the beneficial effects of the present application at least include:
(1) Promotion and distribution efficiency of software product packages are improved: by adopting the architecture design of distributed storage and load balancing, promotion and distribution of the product package can be more efficiently carried out, and time and labor cost are saved.
(2) Enhancing the reliability and security of the product package: the method has the advantages that the technical means of distributed databases, multi-copy storage and the like are introduced, the reliability and the safety of the product package are improved, the control of the user authority is enhanced, and the integrity and the safety of data are ensured.
(3) The user use experience is improved: the flexible customization extension and integration are supported, so that a user can customize and extend according to own requirements, and meanwhile, a friendly user interface and operation experience are provided, so that the use experience of the user is improved.
By uploading and downloading, storing and organizing, version control and metadata management of software product packages; providing promotion and distribution functions for software packages; providing security and rights management functions for software product packages, including access control, security audit and log records; providing integration and extension functions to the artifact management system, including providing API and SDK interfaces, and plug-ins and extension mechanisms; version management problems, storage and organization problems, security and access control problems, and metadata management problems present in the artifact management system may be solved.
The foregoing description is only an overview of the present application, and is intended to provide a better understanding of the present application, as it is embodied in the following description, with reference to the preferred embodiments of the present application and the accompanying drawings.
Drawings
FIG. 1 is a system architecture diagram of a promotion and distribution system for software packages and metadata in accordance with the present application.
Fig. 2 is a schematic diagram of a packet management module according to the present application.
FIG. 3 is a schematic diagram of an integrated and extended module according to the present application.
Detailed Description
The following describes in further detail the embodiments of the present application with reference to the drawings and examples. The following examples are illustrative of the application and are not intended to limit the scope of the application.
First, a description will be given of several nouns to which the present application relates.
Product package (Artifact): refers to intermediate or final results, such as source code, executable programs, library files, etc., produced during the software development process.
Promotion (motion): refers to the process of pushing a package of articles from one environment to the next, such as from a development environment to a testing environment, from a testing environment to a production environment, etc.
Metadata (Metadata): refers to data describing the relevant properties of the artifact package, such as version number, artifact package type, author, etc.
Distribution): refers to the process of distributing the product package to an end user or other system.
Security (Security): refers to the ability to protect a system or data from threats such as unauthorized access, use, disclosure, corruption, modification, etc.
Rights (Authorization): refers to the ability of a control system user to access resources in the system, including read, write, execute, etc.
Integration (Integration): refers to integrating a system with other systems or services to achieve more complex functions.
Extension (Extension): refers to extending the capabilities of a system by adding new functions or modifying existing functions.
Referring to fig. 1, a system architecture diagram of a promotion and distribution system for a software product package and metadata according to an embodiment of the present application includes:
and the product package management module: the module provides management and storage functions for software product packages. The method specifically comprises the following steps:
product package uploading and downloading submodule: support uploading and downloading product packages, and provide a variety of upload and download modes, including HTTP, FTP, SCP, etc.
Package storage and organization sub-module: support storing the artifact packages into object stores and provide flexible organizational structure and directory management functions.
The package version control submodule: and the distributed version control system is adopted to carry out version control, so that distributed collaborative development and version control are realized, and the problems of version conflict and version confusion are avoided.
The product package metadata management sub-module: metadata management is carried out by adopting a metadata management platform, so that standard, accurate and efficient metadata management is realized, and metadata analysis and metadata modeling functions are provided.
Promotion and distribution module: the module provides promotional and distribution functionality for software packages. The method specifically comprises the following steps:
product package promotion sub-module: support promotion operation to the product package and provide definition and management of promotion flow and promotion strategy.
Product package distribution sub-module: support distribution of the product packages into different environments and provide flexible distribution policies and rule settings.
Security and rights module: the module provides security and rights management functions for software product packages. The method specifically comprises the following steps:
the access control sub-module: and the RBAC model is adopted for access control and authority management, so that flexible and controllable access control and authority management are realized.
Security audit and logging sub-module: the system provides security audit and log recording functions, records operations such as uploading, downloading, modifying and the like of the product package, and ensures the security and stability of the system.
Integration and extension module: the module provides integrated and extended functionality to the article management system. The method specifically comprises the following steps:
API and SDK interface submodule: API and SDK interfaces providing version control, promotion and distribution, security and rights functions, support integration with other systems.
Plug-in and expansion sub-module: and providing a plug-in and an extension mechanism, supporting custom development and integration of a third-party plug-in, and extending the functions of the product management system.
The package management module, and the architectural design of the module, are described in detail below.
Firstly, the package management module is one of the core modules of the whole system, and the main purpose of the design is to provide an efficient package management mechanism, including package uploading, storing, metadata management, version control, authority management, inquiry and other functions, so as to meet various requirements of users on package management.
Referring to fig. 2, the architectural design of the module mainly includes the following aspects:
and the product package storage module is as follows: the product package storage is a core function of the module and is used for storing various product packages and metadata information thereof. In the design, the storage of the product package adopts a distributed storage scheme, and the backup and fault tolerance of the data are realized through a plurality of nodes so as to ensure the high availability and reliability of the system.
Metadata management module: metadata management is mainly used for managing metadata in the product package, and comprises operations of defining, storing, inquiring and the like of the metadata. In the design, a scheme based on a relational database is adopted, metadata information is stored in the database, and efficient query is realized through a custom query language.
Version control module: version control is another core function of the module, mainly to meet the requirement of users on the version control of the product package. In the design, the version control adopts a self-grinding module, the version control of the product package is integrated into a product package management module, and the version control function is realized through a self-defined version control algorithm.
And the permission management module is used for: the authority management is mainly used for managing the operation authority of the user in the module and comprises the functions of user login authentication, user role definition, operation authority allocation and the like. In this design, rights management employs an RBAC (role based access control) based scheme, and control of user rights is achieved through role definition and rights allocation.
Product package inquiry module: package querying is another important function of the module, mainly to meet the requirement of users on package querying. In the design, an elastic search-based scheme is adopted to index the metadata information of the product package, and an efficient query function is realized through a query interface provided by the elastic search.
Version control storage module: version control storage is a core function of a self-grinding version control module and is used for storing product package information and related metadata of each version. In the design, the version control storage adopts a distributed storage scheme, and the backup and fault tolerance of the data are realized through a plurality of nodes so as to ensure the high availability and reliability of the system.
In summary, the architecture of the package management module adopts the schemes of distributed storage, relational database, self-research version control, RBAC authority management, elastic search query and the like, so as to provide an efficient, reliable, safe and easy-to-use package management mechanism. The self-grinding version control module enables the system to have better flexibility and customizable performance, and can better meet different version control requirements of users.
Secondly, the promotion and distribution module involves the distribution of the package of products from the artifactry to the designated target environment and ensures the correct execution of a series of processes such as version control, integrity check, etc. The following is the technical architecture design of the promotion and distribution module:
front end layer: and the information such as the tasks and the progress of promotion and distribution is displayed, and an interactive interface is provided for the operation of a user.
Rear end layer: and the information such as tasks and progress of promotion and distribution is processed and stored in a database.
Service layer: and the operation of encapsulating service logic and accessing the database is responsible for providing an interface for front-end layer call.
Message queue layer: and the asynchronous processing of the promotion and distribution tasks is performed, so that the concurrency capability and reliability of the system are improved.
Storage layer: and the system is responsible for storing information such as product packages, metadata, logs and the like generated in the promotion and distribution processes, and common database systems such as MySQL, oracle and the like can be selected.
In turn, the security and rights management module is an important component of the product management system that ensures the security of the system and the integrity of the data. The module comprises functions of user authority management, data security management, security audit, log and the like.
The security and authority management module mainly comprises the following modules:
user rights management: managing access rights of users, including roles, organization, resource access rights and the like of the users;
data security management: ensuring the security of data, including encryption storage, access control, audit and the like;
security audit: recording all operations including user login, operation log, security event and the like;
and (3) log management: and recording the running log of the system, including performance indexes, error information and the like.
The following is a detailed technical architecture design of the security and rights module:
(1) User authority management module
The user authority management module is mainly responsible for managing the access authority of the user, including the role, organization, resource access authority and the like of the user.
The user can log in through the system login interface, the system can authenticate according to the identity information of the user, and information such as roles and organization of the user is loaded into the system. The administrator can manage the user through the management interface, including the operations of adding, deleting, modifying and the like of the user. Meanwhile, an administrator can also manage the roles and organization, including operations such as adding, deleting, modifying and the like of the roles and organization.
When accessing the resource, the system can judge whether the user has access rights according to the role of the user, the organization and other information. If the user does not have permission, the system denies the user's access request.
(2) Data security management module
The data security management module is mainly responsible for ensuring the security of data, including encryption storage, access control, audit and the like.
All data in the system can be stored in an encrypted mode, and the fact that the data cannot be tampered or stolen in the transmission and storage processes is guaranteed. Meanwhile, the system can control the access of the data, and only the user with corresponding authority can access the corresponding data.
The system also carries out security audit and records all operations including user login, operation log, security event and the like. An administrator can check the safety condition of the system through the audit log and timely discover abnormal conditions.
(3) Log management module
The log management module is mainly responsible for recording the running log of the system, including performance indexes, error information and the like.
The system will record all the running logs and store the log information in the log database. An administrator can check the running state of the system through a log interface, including performance indexes, error information and the like of the system. Meanwhile, the system can also archive and clean the log regularly, so that the stability and performance of the system are ensured.
Finally, the integration and expansion module can help the user to realize personalized customization and expansion of the system, and meets the requirements of different users. Referring to fig. 3, the following is the technical architecture design of the integration and expansion module:
(1) And (3) an integration module: the system is used for integrating the product management system into other systems or tools to realize sharing and interaction of data. Specifically, the integrated module includes the following functional modules:
API interface: a RESTful API interface is provided to support other systems or tools to access data in the artifact management system through the API.
Plug-in frame: and providing a plug-in framework, supporting user-defined development of plug-ins, and expanding the functions of the system. The plug-ins may include, but are not limited to, the following types:
storage plug-in: the user is supported to store the article in other storage systems.
The notification plug-in: the user is supported to receive notifications when events such as release, download, etc. occur in the work in progress.
Authentication plug-in: the user is supported to log into the product management system through other authentication systems.
And (3) integrated management: and providing an integrated management interface, supporting a user to manage integrated plugins, configure integrated parameters and the like.
(2) And an expansion module: the method is used for expanding the functions of the product management system and meeting the personalized requirements of users. Specifically, the expansion module includes the following functional modules:
custom tags: the user-defined labels are supported for classifying, searching and other operations on the products.
Workflow engine: user-defined workflows, such as product auditing, release flows, etc., are supported.
Report and analysis: report and analysis functions are provided to help users understand the usage and trends of the product management system.
Expansion management: and providing an expansion management interface, supporting a user to manage expansion plug-ins, configure expansion parameters and the like.
In summary, the present application has the following improvement points:
fine promotion management: the method provides a fine promotion management function and can flexibly promote control aiming at software product packages with different versions. By setting the promotion rules and conditions, automatic promotion is realized, manual operation is reduced, and promotion efficiency and accuracy are improved.
Comprehensive metadata management: the comprehensive metadata management function is provided, and various information of the software product package is managed in a unified way, including product package basic information, version information, construction information, release information and the like. Through unified management of metadata, full life cycle management of the software product package is realized, and more comprehensive and accurate data support is provided for promotion and distribution.
Diversified distribution modes: various distribution modes are provided, including local distribution, remote distribution, cloud distribution and the like. The cloud distribution function is one of innovation points of the method, and the software product package is uploaded to the cloud, so that the global high-speed distribution is realized, and the efficiency and the reliability of software delivery are improved.
Enhanced security and rights management: strengthen in the aspect of security and authority management, and support fine-grained authority control and security policy setting for software product packages and metadata. By setting the authority control and the security policy, the security and confidentiality of the software product package and the metadata are ensured.
Extensibility and customization: the system provides expandability and customizing functions, supports integration of plug-ins and extensions, and enables users to develop and customize secondarily according to own requirements. Meanwhile, multiple API and SDK interfaces are provided, so that the integration and custom development of users are facilitated, and promotion and distribution of more flexible software product packages are realized.
The beneficial effects brought by the application include the following aspects:
(1) Promotion and distribution efficiency of software product packages are improved: by adopting the architecture design of distributed storage and load balancing, promotion and distribution of the product package can be more efficiently carried out, and time and labor cost are saved.
(2) Enhancing the reliability and security of the product package: the method has the advantages that the technical means of distributed databases, multi-copy storage and the like are introduced, the reliability and the safety of the product package are improved, the control of the user authority is enhanced, and the integrity and the safety of data are ensured.
(3) The user use experience is improved: the flexible customization extension and integration are supported, so that a user can customize and extend according to own requirements, and meanwhile, a friendly user interface and operation experience are provided, so that the use experience of the user is improved.
The application adopts advanced technical architecture design and innovative functional module design, so that the system can operate more efficiently, reliably, safely and flexibly, thereby improving the use experience of users and the overall performance of the system.
The application also provides a promotion and distribution method of the software product package and the metadata, the method is applied to a promotion and distribution system of the software product package and the metadata, and the method comprises the following steps:
uploading and downloading, storing and organizing, version control and metadata management are carried out on the software product package;
providing promotion and distribution functions for software packages;
providing security and rights management functions for software product packages, including access control, security audit and log records;
providing integration and extension functionality to the artifact management system, including providing API and SDK interfaces and plug-in and extension mechanisms.
Optionally, the present application further provides a computer readable storage medium, in which a program is stored, where the program is loaded and executed by a processor to implement the software product package and the promotion and distribution method of metadata of the above method embodiment.
Optionally, the present application further provides a computer product, where the computer product includes a computer readable storage medium, where a program is stored, and the program is loaded and executed by a processor to implement the software product package and the promotion and distribution method of metadata in the foregoing method embodiment.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The foregoing examples illustrate only a few embodiments of the application, which are described in detail and are not to be construed as limiting the scope of the application. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the application, which are all within the scope of the application. Accordingly, the scope of protection of the present application is to be determined by the appended claims.

Claims (9)

1. A promotion and distribution system for software packages and metadata, the system comprising:
the package management module is used for uploading and downloading, storing and organizing the software package, controlling version and managing metadata;
a promotion and distribution module for providing promotion and distribution functions for the software product package;
the security and authority module is used for providing security and authority management functions for the software product package, including access control, security audit and log record;
the integration and expansion module is used for providing integration and expansion functions for the product management system, and comprises providing API and SDK interfaces, and plug-in and expansion mechanisms;
the architecture design of the integration and expansion module comprises:
and (3) an integration module: the system is used for integrating the product management system into other systems or tools to realize sharing and interaction of data, and comprises an API interface, a plug-in framework and an integrated management interface;
and an expansion module: the system is used for expanding the functions of the product management system, meets the personalized requirements of users, and comprises custom labels, custom workflow, report and analysis functions and an expansion management interface;
the integrated module also comprises the following functional modules:
API interface: providing a RESTful API interface, and supporting other systems or tools to access data in the product management system through the API;
plug-in frame: providing a plug-in framework, supporting user to develop plug-ins in a self-defined manner, expanding functions of a system, wherein the plug-ins comprise the following types:
storage plug-in: supporting a user to store the product in other storage systems;
the notification plug-in: supporting a user to receive a notification when a work-in-process release and download event occurs;
authentication plug-in: supporting a user to log in the product management system through other authentication systems;
and (3) integrated management: providing an integrated management interface, supporting a user to manage integrated plugins and configure integrated parameters;
the expansion module comprises the following functional modules:
custom tags: the user-defined labels are supported and used for classifying and searching the products;
workflow engine: supporting user-defined workflow, including product auditing and publishing processes;
report and analysis: report and analysis functions are provided, so that a user is helped to know the use condition and trend of the product management system;
expansion management: and providing an expansion management interface, supporting a user to manage expansion plug-ins and configuring expansion parameters.
2. The software package and metadata promotion and distribution system of claim 1 wherein the package management module comprises:
product package uploading and downloading submodule: for supporting upload and download packages and providing a variety of upload and download modes, including HTTP, FTP, SCP;
package storage and organization sub-module: the system is used for supporting the storage of the product package into the object storage and providing flexible organization structure and directory management function;
the package version control submodule: the system is used for carrying out version control by adopting a distributed version control system;
the product package metadata management sub-module: for metadata management using a metadata management platform.
3. The promotion and distribution system of software product packages and metadata of claim 1, wherein the promotion and distribution module comprises:
product package promotion sub-module: the system is used for supporting promotion operation on the product package and providing definition and management of promotion flow and promotion strategy;
product package distribution sub-module: for supporting distribution of the product packages into different environments and providing flexible distribution policies and rule settings.
4. The software product package and metadata promotion and distribution system of claim 1 wherein said security and rights module comprises:
the access control sub-module: the method is used for carrying out access control and authority management by adopting an RBAC model;
security audit and logging sub-module: the method is used for providing security audit and log recording functions and recording the uploading, downloading and modifying operations of the product package.
5. The software product package and metadata promotion and distribution system of claim 1 wherein the integration and extension module comprises:
API and SDK interface submodule: API and SDK interfaces for providing version control, promotion and distribution, security and rights functions, and support integration with other systems;
plug-in and expansion sub-module: the system is used for providing plug-in and extension mechanisms, supporting custom development and integration of third-party plug-ins and extending the functions of the product management system.
6. The software package and metadata promotion and distribution system of claim 1 wherein the package management module is structured to include:
and the product package storage module is as follows: the system is used for storing various product packages and metadata information thereof, adopts a distributed storage scheme, and realizes data backup and fault tolerance through a plurality of nodes;
metadata management module: the method is used for managing metadata in the product package, comprises the operations of defining, storing and inquiring the metadata, adopts a scheme based on a relational database, stores metadata information in the database, and realizes efficient inquiry through a custom inquiry language;
version control module: the system is used for meeting the requirement of a user on the version control of the product package, adopts a self-grinding module, integrates the version control of the product package into a product package management module, and realizes the version control function through a self-defined version control algorithm;
and the permission management module is used for: the system is used for managing the operation authority of a user in the module, comprises a user login authentication function, a user role definition function and an operation authority allocation function, adopts a role-based access control scheme, and realizes the control of the user authority through the role definition function and the authority allocation function;
product package inquiry module: the method is used for meeting the query requirement of a user on the product package, an elastic search-based scheme is adopted, the metadata information of the product package is indexed, and an efficient query function is realized through a query interface provided by the elastic search;
version control storage module: the system is used for storing the product package information of each version and related metadata, and adopts a distributed storage scheme to realize the backup and fault tolerance of data through a plurality of nodes.
7. The promotion and distribution system of software product packages and metadata of claim 1, wherein the promotion and distribution module is structured to include:
front end layer: the system is used for displaying the task and progress information of promotion and distribution and providing an interactive interface for a user to operate;
rear end layer: the system is used for processing the task and progress information of promotion and distribution and storing the task and progress information into a database;
service layer: the system is used for encapsulating business logic and accessing a database and providing an interface for front-end layer calling;
message queue layer: the system is used for carrying out asynchronous processing on the tasks of promotion and distribution, and improving concurrency capability and reliability of the system;
storage layer: is used for storing the product package, metadata and log information generated in the promotion and distribution process, and selects common database systems such as MySQL and Oracle.
8. The software product package and metadata promotion and distribution system of claim 1 wherein the architecture design of the security and rights module comprises:
the user authority management module: the system is used for managing the access rights of the user, including roles, organization and resource access rights of the user;
and a data security management module: the system is mainly responsible for ensuring the security of data, including encryption storage, access control and audit;
and the log management module is used for: the system is used for recording the operation log of the system, including performance indexes and error information.
9. A software product package and metadata promotion and distribution method applied to the software product package and metadata promotion and distribution system according to any one of claims 1 to 8, characterized in that the method comprises:
uploading and downloading, storing and organizing, version control and metadata management are carried out on the software product package;
providing promotion and distribution functions for software packages;
providing security and rights management functions for software product packages, including access control, security audit and log records;
providing integration and extension functionality to the artifact management system, including providing API and SDK interfaces and plug-in and extension mechanisms.
CN202310926574.0A 2023-07-27 2023-07-27 Promotion and distribution system and method for software product package and metadata Active CN116719555B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310926574.0A CN116719555B (en) 2023-07-27 2023-07-27 Promotion and distribution system and method for software product package and metadata

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310926574.0A CN116719555B (en) 2023-07-27 2023-07-27 Promotion and distribution system and method for software product package and metadata

Publications (2)

Publication Number Publication Date
CN116719555A CN116719555A (en) 2023-09-08
CN116719555B true CN116719555B (en) 2023-11-10

Family

ID=87866293

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310926574.0A Active CN116719555B (en) 2023-07-27 2023-07-27 Promotion and distribution system and method for software product package and metadata

Country Status (1)

Country Link
CN (1) CN116719555B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564204A (en) * 2022-03-02 2022-05-31 浪潮云信息技术股份公司 Software product library management method and system applied to pipeline construction
CN115796754A (en) * 2022-09-08 2023-03-14 神州数码系统集成服务有限公司 IT research and development management process-oriented software release management method, system and platform

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564204A (en) * 2022-03-02 2022-05-31 浪潮云信息技术股份公司 Software product library management method and system applied to pipeline construction
CN115796754A (en) * 2022-09-08 2023-03-14 神州数码系统集成服务有限公司 IT research and development management process-oriented software release management method, system and platform

Also Published As

Publication number Publication date
CN116719555A (en) 2023-09-08

Similar Documents

Publication Publication Date Title
US10540173B2 (en) Version control of applications
US10348774B2 (en) Method and system for managing security policies
US9594778B1 (en) Dynamic content systems and methods
US7539680B2 (en) Revision control for database of evolved design
JP5982366B2 (en) Systems and methods for private cloud computing
KR100550758B1 (en) A method and system for managing configuration changes in a data processing system
US9286337B2 (en) System and method for supporting heterogeneous solutions and management with an enterprise crawl and search framework
US8127133B2 (en) Labeling of data objects to apply and enforce policies
US20050091346A1 (en) Settings management infrastructure
US7613726B1 (en) Framework for defining and implementing behaviors across and within content object types
US20070203952A1 (en) Configuration management database state model
US11119749B2 (en) Architectures and techniques for record protection and field management
US7650501B1 (en) System and methods for construction, fusion, prosecution, and maintenance of minimized operating environments
Rooney et al. Experiences with managing data ingestion into a corporate datalake
US8365165B2 (en) Dynamic addition of products and removal of software products on a distribution server
US8433728B2 (en) System and method for creating and managing business objects
Annett Working with Legacy Systems: A practical guide to looking after and maintaining the systems we inherit
CN116719555B (en) Promotion and distribution system and method for software product package and metadata
US9229787B2 (en) Method and system for propagating modification operations in service-oriented architecture
US9298432B1 (en) Systems and methods for performing hooking in a jitted environment
US10949559B1 (en) Repository-based privilege escalation for workflows
Belyaev et al. On the formalization, design, and implementation of component-oriented access control in lightweight virtualized server environments
EP4040305B1 (en) Data processing control system
US20230306126A1 (en) Limiting cloud permissions in deployment pipelines
Malcher et al. Data Pump

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant