CN111221562A - Medicine research and development software warehouse and software package management system thereof - Google Patents

Medicine research and development software warehouse and software package management system thereof Download PDF

Info

Publication number
CN111221562A
CN111221562A CN201911412212.XA CN201911412212A CN111221562A CN 111221562 A CN111221562 A CN 111221562A CN 201911412212 A CN201911412212 A CN 201911412212A CN 111221562 A CN111221562 A CN 111221562A
Authority
CN
China
Prior art keywords
software
package
module
baseline
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911412212.XA
Other languages
Chinese (zh)
Other versions
CN111221562B (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.)
Xtalpi Inc
Original Assignee
Xtalpi Inc
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 Xtalpi Inc filed Critical Xtalpi Inc
Priority to CN201911412212.XA priority Critical patent/CN111221562B/en
Publication of CN111221562A publication Critical patent/CN111221562A/en
Application granted granted Critical
Publication of CN111221562B publication Critical patent/CN111221562B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a medicine research and development software warehouse and a software package management system thereof, wherein the medicine research and development software warehouse comprises a user authentication module, a software package uploading and index creating module, a baseline release management module, an authorization management module, a software package retrieving and downloading module, an adapter plug-in and a storage layer. The software package management system comprises an authentication module, a package management service module, a web front-end module and a command line tool module. The invention can be used for butting various object storage services and software warehouses in a plug-in mode, thereby realizing cross-platform software package management with multiple development languages; the authentication and software authorization functions are added, so that a user can conveniently authorize the software developed in a company to be used by a partner, and the software distribution mode is simpler; the baseline management function is added, so that software is more simply released externally, and the cooperation efficiency of internal developers in the construction of different software packages for developing the same software system is improved.

Description

Medicine research and development software warehouse and software package management system thereof
Technical Field
The invention belongs to the technical field of drug research and development data processing, and particularly relates to a drug research and development software warehouse and a software package management system thereof.
Background
Software warehouse and software management tool are generally used together for publishing and installing software
The software repository is a prepared directory, or a series of servers storing software, or a website, which contains software packages and index files.
The software management package tool can automatically locate and acquire the correct software package in a warehouse and provide management operations for the software package such as retrieval, installation, downloading, deletion and the like.
Common software repository and package management tools, such as apt, yum, pip, etc., provide software package publishing, storage, retrieval and installation functions.
The existing software warehouse and software management tool have the following technical problems:
(1) platform and development language constraints: the drug development software is generally complex, needs to be developed by combining multiple software development languages, and needs to provide an quart platform of SDK to facilitate the butt joint of partner enterprises. The existing software warehouse and package management system can only be used for a single development language or a single operating system platform, such as apt, yum can only be used for distribution of linux system software, and pip can only be used for distribution of software written by python.
(2) Lack of authorization functionality: the drug development software is generally delivered to the partner enterprise for use in an authorized manner, and therefore a software repository with an authorization function is required. Most of the existing software warehouse and package management systems are used for open source software, and because the open source software has the characteristic of free use, the existing software warehouse does not have a software authorization function or only has a simple account password verification function.
(3) Lack of baseline definition: the drug development software is generally complex and is formed by combining dozens of software packages, the release of the software packages needs to be controlled in a baseline defining mode, the externally-released packages are convenient to manage, the cooperation of internal software developers is also convenient, most of the existing software warehouse and package management systems manage a single software package and software, and no clear baseline definition exists.
Disclosure of Invention
In view of the above technical problems, the present invention provides a drug development software warehouse and a software package management system thereof, so as to implement cross-platform and multi-development-language software package management, and make the software distribution mode more concise.
The adopted technical scheme is as follows:
a drug development software repository, comprising: the system comprises a user authentication module, a software package uploading and creating index module, a baseline release management module, an authorization management module, a software package retrieving and downloading module, an adapter plug-in and a storage layer;
the user authentication module is used for enabling a user to access software warehouse resources by using a front-end command line tool or a web page after the user authenticates through a user name and a password or an api & secret;
the software package uploading and index creating module is characterized in that a user uploads the software package and metadata of the software package through a command line or a web front-end page, and the metadata comprises the following main fields: the method comprises the steps of packet type, packet name, storage source address, deployment environment (corresponding to four software development processes of maintenance, staging, and production), operation platform (linux-64, linux-32, win-64 and the like), packet version, software dependence and software description;
after receiving the data transmitted from the front end, the software warehouse stores the metadata as meta information into a relational database for indexing; selecting a corresponding adapter plug-in according to the packet type, and storing the packet file into a corresponding storage source, wherein if the packet of the conda type adopts the conda adapter plug-in and is stored into an object storage service conforming to the conda channel specification, the system is internally provided with several adapter plug-ins of conda, docker and general file package, and besides several adapter plug-ins provided by the system, a user can write other adapter plug-ins for docking more software storage sources;
the baseline release management module is used for releasing the software and keeping the working synchronization of developers of different software package components. The management of the baseline by the system is divided into two main functions of creating the baseline and improving the baseline.
The administrator can create a base line for a large software to be released on the web interface, and select the software package components forming the base line and the version of each software package to complete the release of the software base line. After a period of iteration, when the requirement of a new stable version is reached, the baseline boost may be selected, at which point the version number of each component may be changed and new software package components added.
The baseline is abstracted into a special software package to be managed and stored inside the system, when a user creates or raises the baseline at the front end, a package of a type of baseline is created inside the system, all components are used as dependency declarations of a baseline package, and the package is stored in an object storage service through a baseline adapter.
The system of the authorization management module adopts a RBAC (Role-Based Access Control) mode to carry out authorization management, and the account can retrieve and install corresponding software packages after being authorized. The authorization is divided into baseline authorization and software package authorization, and can authorize to access all software packages contained in a certain baseline or authorize a certain software package independently.
The retrieval and downloading software package module can retrieve and download the software package within an authorized range after the authorized account number is authenticated. The system first searches corresponding meta information in the relational database, and then the system selects corresponding adapter plug-ins to download the software package according to the package type.
The adapter plug-in adapts the different software warehouses at the bottom layer through the built-in adapter plug-in and the adapter plug-in provided by a user, so that the system can store and download different object storage systems and third-party software warehouses;
the storage layer is as follows: and storing the software package by using the object storage service and the third-party software warehouse as storage services. A relational database is used to store the software package index and other metadata.
The software package in the medicine research and development software warehouse is managed by the following software package management system, and the software package management system comprises the following modules:
the authentication module is used for authenticating a user name and a password of a user or appkey & secretekey and granting different authorities to different account numbers based on a RBAC (role-based access control) mode;
the system comprises a package management service module, a WEB service module and a service module, wherein the package management service module is based on flash and is used for providing REST WEB api and realizing the management of software packages by calling different adapters;
the adapter plug-in is used for adapting different software warehouses at the bottom layer through the built-in adapter plug-in and the adapter plug-in provided by a user, so that the system can store and download different object storage systems and third-party software warehouses;
a storage layer: the software package is stored using the object storage service and a third party software repository as a storage service (e.g., docker registry, conda channel). Storing the software package index and other metadata using a relational database;
a web front-end module: providing web front-end service, so that a user can directly perform package management, authorization management, baseline management and other operations on a web page;
a command line tool module: and a command line tool is provided, so that a user can search, install and upload the software package on a command line client.
The medicine research and development software warehouse and the software package management system thereof provided by the invention have the following technical effects:
1. the system can be used for butt joint of various object storage services and software warehouses in a plug-in mode, so that cross-platform software package management with multiple development languages is realized, and the limitation that the traditional software warehouse can only be used for a single system or language is broken.
2. The system adds the functions of authentication and software authorization, so that a user can conveniently authorize the software developed in a company to be used by a partner, and the software distribution mode is simpler.
3. The system adds a baseline management function, abstracts the baseline into a special software package, thereby achieving the management and control of baseline release baseline improvement, enabling the software release to be simpler, and simultaneously improving the cooperation efficiency of internal developers in the construction of different software packages developing the same software system.
Drawings
FIG. 1 is a schematic diagram of the software warehouse architecture of the present invention.
Detailed Description
The technical solution of the present invention is further described in detail by the accompanying drawings and embodiments.
The software warehouse architecture as described in figure 1. The system is mainly realized on the basis of a web api and a command line client developed by a flash web development framework in python2.7 language and a web front-end interface developed on the basis of an electron framework. Where the package-indexed relational data is stored in postgresql hosted on the AWS RDS, the published software packages are stored in the AWS 3, and the docker image is stored in the AWS ECR.
There are two ways a user can access the software package, one is a command line client mode and one is a web interface mode.
With the command line client mode, the user can install the command line client through the Python environment. After logging into the system via the Pubtools login command. The software packages are pushed to the system through a pubtools publish command, or the software packages are downloaded through a pubtools install command, or a software package list in the system is viewed through a pubtools search command.
The user can also log in the website of the system through the browser and view and download the software package through the web interface. Firstly, selecting a software package to be viewed in a homepage, then clicking a package name to view a software package version list, and clicking viewing details of a certain version or downloading a tab to view and download the software package.
The user can only perform baseline management through a web page, and the user clicks the baseline management on a home page- > creates a baseline. The name of the software baseline to be created is then entered. And finally, selecting the software package and the corresponding version thereof contained in the baseline, and clicking to determine that the creation is completed. When a baseline lift is needed, the user clicks on baseline management on the home page- > selects baseline lift. And then enter the software baseline name to be changed. And finally, modifying the version of the software package contained in the baseline to a new baseline version, and clicking to determine that the baseline change is completed.

Claims (7)

1. A drug development software repository, comprising: the system comprises a user authentication module, a software package uploading and creating index module, a baseline release management module, an authorization management module, a software package retrieving and downloading module, an adapter plug-in and a storage layer;
the user authentication module is used for enabling a user to access software warehouse resources by using a front-end command line tool or a web page after the user authenticates through a user name and a password or an api & secret;
the software package uploading and index creating module is used for uploading the software package and the metadata of the software package by a user through a command line or a web front-end page; after receiving the data transmitted from the front end, the software warehouse stores the metadata as meta information into a relational database for indexing; selecting a corresponding adapter plug-in according to the package type, and storing the package file into a corresponding storage source;
the baseline release management module has two main functions of establishing a baseline and improving the baseline for the management of the baseline; an administrator creates a base line aiming at a large software to be released on a web interface, and selects software package components forming the base line and the version of each software package to complete the release of the software base line; after a period of iteration, when the requirement of a new stable version is met, selecting a base line to be increased, changing the version number of each component and adding a new software package component;
the authorization management module performs authorization management in a role-based access control mode, and an account can retrieve and install a corresponding software package after being authorized;
the retrieval and downloading software package module can retrieve and download the software package within an authorized range after being authenticated by an authorized account;
the adapter plug-in adapts the different software warehouses at the bottom layer through the built-in adapter plug-in and the adapter plug-in provided by a user, so that the system can store and download different object storage systems and third-party software warehouses;
the storage layer is as follows: the object storage service and the third party software repository are used as storage services, the software packages are stored, and the relational database is used for storing the software package indexes and other metadata.
2. The drug development software repository according to claim 1, wherein the metadata of the package uploaded and created in the index module includes the following main fields: package type, package name, storage source address, deployment environment, operating platform, package version, software dependency, software description.
3. The drug development software warehouse according to claim 1, wherein the software packages are uploaded and created into the index module, the package files are stored in the corresponding storage sources by using a conda adaptor plug-in for the conda type packages, and the packages are stored in the object storage service conforming to the conda channel specification, several conda, docker and universal file packages are built in the system, and besides several adaptor plug-ins provided by the system, users can write other adaptor plug-ins for interfacing with more software storage sources.
4. The drug development software warehouse according to claim 1, wherein in the baseline release management module, the baseline is abstracted into a special "software package" for management and storage, when a user creates or raises the baseline at a front end, a package with a type of baseline is created inside the system, all components are used as dependency declarations of a baseline package, and the package is stored in an object storage service through a baseline adapter.
5. The drug development software repository according to claim 1, wherein the authorization management module is divided into two types, namely baseline authorization and software package authorization, and can authorize access to all software packages included in a baseline, or can authorize a software package individually.
6. The drug development software warehouse of claim 1, wherein the retrieving and downloading software package module first searches the relational database for the corresponding meta information, and then the system selects the corresponding adapter plug-in for downloading the software package according to the package type.
7. Software package management system for software package management as claimed in claims 1 to 6, comprising the following modules:
the authentication module is used for authenticating a user name and a password of a user or appkey & secretekey and granting different authorities to different account numbers based on a RBAC (role-based access control) mode;
the system comprises a package management service module, a WEB service module and a service module, wherein the package management service module is based on flash and is used for providing REST WEB api and realizing the management of software packages by calling different adapters;
a web front-end module: providing web front-end service, so that a user can directly perform package management, authorization management, baseline management and other operations on a web page;
a command line tool module: and a command line tool is provided, so that a user can search, install and upload the software package on a command line client.
CN201911412212.XA 2019-12-31 2019-12-31 Medicine research and development software warehouse and software package management system thereof Active CN111221562B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911412212.XA CN111221562B (en) 2019-12-31 2019-12-31 Medicine research and development software warehouse and software package management system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911412212.XA CN111221562B (en) 2019-12-31 2019-12-31 Medicine research and development software warehouse and software package management system thereof

Publications (2)

Publication Number Publication Date
CN111221562A true CN111221562A (en) 2020-06-02
CN111221562B CN111221562B (en) 2021-07-30

Family

ID=70807980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911412212.XA Active CN111221562B (en) 2019-12-31 2019-12-31 Medicine research and development software warehouse and software package management system thereof

Country Status (1)

Country Link
CN (1) CN111221562B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111863120A (en) * 2020-06-28 2020-10-30 深圳晶泰科技有限公司 Drug virtual screening system and method for crystal compound
CN111949668A (en) * 2020-09-23 2020-11-17 成都精灵云科技有限公司 Management method for enabling cloud platform to support multiple storage modes
CN116484356A (en) * 2023-04-26 2023-07-25 安元科技股份有限公司 Npm packet hierarchical authorization management method and device based on RBAC authority model

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020144248A1 (en) * 1998-06-19 2002-10-03 Microsoft Corporation Software package management
CN102129381A (en) * 2011-03-14 2011-07-20 兰雨晴 Method for customizing linux operating system
CN106980501A (en) * 2017-02-23 2017-07-25 北京小鸟看看科技有限公司 A kind of software package management method, device and system
CN108121544A (en) * 2016-11-28 2018-06-05 央视国际网络无锡有限公司 A kind of implementation method of C language package manager

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020144248A1 (en) * 1998-06-19 2002-10-03 Microsoft Corporation Software package management
CN102129381A (en) * 2011-03-14 2011-07-20 兰雨晴 Method for customizing linux operating system
CN108121544A (en) * 2016-11-28 2018-06-05 央视国际网络无锡有限公司 A kind of implementation method of C language package manager
CN106980501A (en) * 2017-02-23 2017-07-25 北京小鸟看看科技有限公司 A kind of software package management method, device and system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111863120A (en) * 2020-06-28 2020-10-30 深圳晶泰科技有限公司 Drug virtual screening system and method for crystal compound
CN111863120B (en) * 2020-06-28 2022-05-13 深圳晶泰科技有限公司 Medicine virtual screening system and method for crystal compound
CN111949668A (en) * 2020-09-23 2020-11-17 成都精灵云科技有限公司 Management method for enabling cloud platform to support multiple storage modes
CN111949668B (en) * 2020-09-23 2023-05-05 成都精灵云科技有限公司 Management method for enabling cloud platform to support multiple storage modes
CN116484356A (en) * 2023-04-26 2023-07-25 安元科技股份有限公司 Npm packet hierarchical authorization management method and device based on RBAC authority model

Also Published As

Publication number Publication date
CN111221562B (en) 2021-07-30

Similar Documents

Publication Publication Date Title
US10606578B2 (en) Provisioning of pluggable databases using a central repository
US20200387481A1 (en) Systems and methods for in-place records management and content lifecycle management
CN111221562B (en) Medicine research and development software warehouse and software package management system thereof
US10579803B1 (en) System and method for management of application vulnerabilities
US10621176B2 (en) Automatic reconfiguration of relocated pluggable databases
US7752207B2 (en) Crawlable applications
US7346635B2 (en) System and method for transferring a database from one location to another over a network
US8069184B2 (en) Systems and methods to implement extensibility of tenant content in a provider-tenant environment
US7818298B2 (en) System and method for tracking documents in an on-demand service
US7693851B2 (en) Systems and methods for implementing a shared space in a provider-tenant environment
US8819068B1 (en) Automating creation or modification of database objects
US20080162483A1 (en) Methods and systems for protecting shared tables against unauthorized overwriting from a tenant space in a mega-tenancy environment
US11609758B2 (en) Drug research and development software repository and software package management system
US11748495B2 (en) Systems and methods for data usage monitoring in multi-tenancy enabled HADOOP clusters
CN113934911B (en) File crawling and searching method and system
US20160004850A1 (en) Secure download from internet marketplace
US10628460B2 (en) Delegating resembling data of an organization to a linked device
US20090327452A1 (en) Automated channel data extraction and transformation
CN105740300B (en) Method for constructing model system and model system
WO2014195930A1 (en) Delegating resembling data of an organization to a linked device
WO2020085938A1 (en) Method and system for integrated management of big data
US11803569B2 (en) Computer system and method for accessing user data that is distributed within a multi-zone computing platform
CN112698910A (en) Infrastructure and innovative data access research of big data security
CN116821157A (en) Access right control method, electronic device and storage medium
CN112181975A (en) Method and apparatus for creating a database in a data warehouse

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 3 / F, Shunfeng industrial building, No.2 Hongliu Road, Fubao community, Fubao street, Futian District, Shenzhen City, Guangdong Province

Applicant after: Shenzhen Jingtai Technology Co.,Ltd.

Address before: 518000 4th floor, No.9 Hualian Industrial Zone, Xinshi community, Dalang street, Longhua District, Shenzhen City, Guangdong Province

Applicant before: Shenzhen Jingtai Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Drug R&D Software Warehouse and Software Package Management System

Effective date of registration: 20231102

Granted publication date: 20210730

Pledgee: Bank of China Limited by Share Ltd. Shenzhen East Branch

Pledgor: Shenzhen Jingtai Technology Co.,Ltd.

Registration number: Y2023980063952