CN105373401B - Software package method for automatically releasing and system - Google Patents

Software package method for automatically releasing and system Download PDF

Info

Publication number
CN105373401B
CN105373401B CN201510706186.7A CN201510706186A CN105373401B CN 105373401 B CN105373401 B CN 105373401B CN 201510706186 A CN201510706186 A CN 201510706186A CN 105373401 B CN105373401 B CN 105373401B
Authority
CN
China
Prior art keywords
software package
server
software
configuration
module
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
CN201510706186.7A
Other languages
Chinese (zh)
Other versions
CN105373401A (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.)
Shanghai Looking For Steel Network Information Polytron Technologies Inc
Original Assignee
Shanghai Looking For Steel Network Information Polytron Technologies 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 Shanghai Looking For Steel Network Information Polytron Technologies Inc filed Critical Shanghai Looking For Steel Network Information Polytron Technologies Inc
Priority to CN201510706186.7A priority Critical patent/CN105373401B/en
Publication of CN105373401A publication Critical patent/CN105373401A/en
Application granted granted Critical
Publication of CN105373401B publication Critical patent/CN105373401B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

The present invention provides a kind of software package method for automatically releasing and systems, the described method comprises the following steps:(1) server obtains the source code of software package to be released after receiving the publication instruction transmitted by client;(2) server is compiled the source code by built-in compiler;(3) source code after compiling is packaged by server according to built-in multiple site environments rule, to generate software package corresponding with site environment;(4) software package of generation is distributed by server according to destination address.The present invention can not only establish repetition, reliably issue flow, to improve the publication quality of software package;And process automation will can be entirely issued, promote the efficiency for issuing of entire software package;Furthermore multiple developers can be made to simultaneously participate in, to increase the transparency of software development.

Description

Software package method for automatically releasing and system
Technical field
The present invention relates to computer realm more particularly to a kind of software package method for automatically releasing and systems.
Background technology
With the increase of software requirement, the development of technology and people are to the application of software or the specific setting of product Requirement raising, various applications or product or the perfect of software function continue to introduce new.In the prior art, to applying or producing The research and development of product or software need developer locally developing and compiling, and then remotely login server, and will be after compiling Software package is uploaded to server, while according to different site environment rules, changing on the server corresponding with site environment Configuration file, executed then according to destination address distribution operation, to complete release tasks.Shown in Fig. 1:1) Exploitation is local to generate publication packet;2) login service device;3) publication packet is uploaded, and changes configuration file;4) IIS is operated.
By the above process, it can be seen that the publication or update of application or product or software need to spend a large amount of manpowers and Time.It is more long when being accounted for because of artificial publication software package, and unstability is high, be easy to cause human error, and less efficient, and then make User experience can not be reduced more rapidly using updated application or product or software by obtaining user.Furthermore entire software package Issuing process does not have the transparency, and is not suitable for multi agent cooperation environment.
Therefore, it is urgent to provide a kind of software package method for automatically releasing and systems.
Invention content
To solve the above-mentioned problems, a kind of software package method for automatically releasing of present invention offer and system, can not only build It is vertical to repeat, reliably issue flow, to improve the cloth quality of software package hair;And process automation will can be entirely issued, it carries Rise the efficiency for issuing of entire software package;Furthermore multiple developers can be made to simultaneously participate in, to increase the transparent of software development Degree.
One side according to the present invention, the present invention provides a kind of software package method for automatically releasing comprising:(1) it services Device obtains the source code of software package to be released after receiving the publication instruction transmitted by client;(2) server passes through built-in Compiler is compiled the source code;(3) server is according to built-in multiple site environments rule, by the source generation after compiling Code is packaged, to generate software package corresponding with site environment;(4) server according to destination address by the software package of generation It is distributed.
Another aspect according to the present invention, the present invention also provides a kind of software package automated pubilication systems comprising:Source generation Code acquiring unit obtains the source generation of software package to be released to server after receiving the publication instruction transmitted by client Code;Compilation of source code unit is compiled the source code by built-in compiler to server;Packaged unit, to Source code after compiling is packaged by server according to built-in multiple site environments rule, to generate and site environment phase Corresponding software package;The software package of generation is distributed to server according to destination address by software package Dispatching Unit.
It is an advantage of the current invention that by using software package method for automatically releasing of the present invention and system, it can It establishes and repeats, reliably issues flow, to improve the publication quality of software package, and then avoid human error, and can will be whole A publication process automation promotes the efficiency for issuing of entire software package, and then reduces related personnel and waste time having no technology Among the duplication of labour of content, furthermore, multiple developers can be made to simultaneously participate in, to increase the transparency of software development, And then avoid the other staff in team that from can not learning entire publishing process in time.
Description of the drawings
According to the accompanying drawings to the detailed description of the specific embodiment of the invention, those skilled in the art will be more Understand the above-mentioned and other purposes of the present invention, advantages and features.
By reading the detailed description of following detailed description, various other advantages and benefit are common for this field Technical staff will become clear.Attached drawing is only used for showing the purpose of specific implementation mode, and is not considered as to the present invention Limitation.And throughout the drawings, the same reference numbers will be used to refer to the same parts.
Fig. 1 is the step flow chart of software package publication in the prior art;
Fig. 2 is the step flow chart of software package method for automatically releasing in an embodiment of the present invention;
Fig. 3 is the block schematic illustration of software package automated pubilication system in an embodiment of the present invention;
Fig. 4 is the structural schematic diagram of source code acquiring unit in an embodiment of the present invention;
Fig. 5 is the structural schematic diagram of packaged unit in an embodiment of the present invention;
Fig. 6 is the structural schematic diagram of software package Dispatching Unit in an embodiment of the present invention;
Fig. 7 is the structural schematic diagram of software package Dispatching Unit in another embodiment of the present invention;
Fig. 8 is the structural schematic diagram of software package Dispatching Unit in another embodiment of the present invention;
Fig. 9 is the structural schematic diagram of software package Dispatching Unit in another embodiment of the present invention;
Figure 10 is the structural schematic diagram of packaged unit in another embodiment of the present invention.
Specific implementation mode
Exemplary embodiment of the present invention is more fully described below with reference to the accompanying drawings.Although showing the present invention in attached drawing Exemplary embodiment, it being understood, however, that may be realized in various forms the present invention without answering illustrated embodiment to limit. It is to be able to be best understood from the present invention on the contrary, providing these embodiments, and can be by the scope of the present invention completely It is communicated to those skilled in the art.
Shown in Figure 2, the present invention provides a kind of software package method for automatically releasing, and this approach includes the following steps:
Step S210:Server obtains the source of software package to be released after receiving the publication instruction transmitted by client Code.
In this step, the source code of software package to be released can be stored in the local device of developer or store In the Source code management server (such as server of TFS patterns) of a centralized management, and it is without being limited thereto.Developer or survey Examination personnel or other related personnel can select software package to be sent by (website) website that client or foreground are provided And its corresponding site environment, relevant parameter etc., to execute publication instruction.Server is receiving developer or tester Or after the posting request of other related personnel, it can be called and be obtained corresponding soft according to information such as title, the versions of software package The source code of part packet.In the present embodiment, following steps be may further include:(11) server provides a collocation point, with Determine corresponding destination server in site environment.(12) server provides a target requirement list, with selection and target requirement Corresponding code packet, and then determine site environment corresponding with target requirement.Wherein, in step (11), match by one It sets a little, it may be determined that site environment corresponding to code packet to be sent (such as development environment, test environment, production environment Deng), each site environment corresponds to corresponding destination server (quantity etc. for including destination server).In step (12), When selecting code packet (i.e. program) corresponding with target requirement, it may be determined that the software package will be sent to corresponding live ring Border (such as test environment, production environment).
Step S220:Server is compiled the source code by built-in compiler.
In this step, server can pass through the multilinguals such as built-in compiler, such as C, PHP, Python, Java Compiler be compiled.The compiler can be the common compiler of those skilled in the art, will not enumerate herein.
Step S230:Source code after compiling is packaged by server according to built-in multiple site environments rule, with Generate software package corresponding with site environment.
After having compiled code, different software packages is generated according to different configuration files.
In the present embodiment, following steps be may further include:(31) all site environment configurations of server calls Template library;(32) server is by a multi-environment configuration file Core Generator and according to code corresponding with target requirement Packet searches profile data corresponding with site environment in the template library of all site environments configuration;(33) all After corresponding profile data successfully being extracted in the template library of site environment configuration, the configuration file number that will be extracted According to being incorporated to profile template, to generate corresponding configuration file;(34) after the configuration file generated being added to compiling Source code among, to execute subsequent packaging operation.
Wherein, in step (31), the template library of all site environment configurations (such as test environment, production environment etc.) can Among being stored in a file, this document is similar to text file.
In step (32), when developer or tester or other related personnel are when selecting software package to be released, Corresponding environment (such as development environment, test environment, production environment), and each site environment are just automatically confirmed that There is its corresponding profile data, therefore, using the environmental labels for the initial position for being stored in above-mentioned file, and pass through Multi-environment configuration file Core Generator (configtools) is searched in the template library that all site environments configure and site environment Corresponding profile data, the wherein environmental labels have uniqueness, and (such as develop ring to distinguish different environment Border, test environment, production environment).
In step (33), corresponding configuration file number is successfully extracted in the template library of all site environments configuration After (it is xml document), the profile data extracted is incorporated to profile template (it is tpl files), with Generate corresponding configuration file (it is cfg files).Above-mentioned tpl files are to configuration node, and xml document is to according to different rings Border generates corresponding profile data, data source is equivalent to, to provide the occurrence corresponding to each environment, such as user Name/password etc. (usemame/password in each environment is different).
In step (34), the code packet that is generated based on above-mentioned compiling source code (such as once generate all environment Code packet), and configuration file is respectively implanted in corresponding code packet, to generate corresponding software package.In this embodiment party In formula, the code packet of 4 kinds of varying environments (such as development environment, test environment, production environment) can be once generated.
Step S240:The software package of generation is distributed by server according to destination address.
It in this step, can be according to destination address (according to the ground of destination server previously set in collocation point Location) software package of generation is distributed in corresponding environment.
It can be seen that by executing above-mentioned steps S210 to S240, it can realize that foundation repeats, reliably issues flow, To improve the publication quality of software package, and then human error is avoided, and will can entirely issue process automation, promoted entire The efficiency for issuing of software package, and then reduce related personnel and waste time among having no the duplication of labour of technology content.
In a preferred embodiment of the invention, among step S240, following steps be may further include:Step (41), the publishing policy that configuration software packet is issued automatically;Step (42) provides the corresponding power of examination and approval according to publishing policy.
Wherein, it is single that a publication is generated in step (41), the publishing policy issued automatically to configuration software packet.Described It issues in list, the code name of software package can be defined, version number, imprint, dispose the information such as handbook and storage address.This Sample, multiple developers can participate according to the single information of the publication in same project, to increase the transparent of software development Degree, and then avoid the other staff in team that from can not learning entire publishing process in time.
In step (42), the corresponding power of examination and approval is provided according to publishing policy.In this way, examining with the corresponding power of examination and approval Personnel's (such as exploitation, test, PMO, operation maintenance personnel) are criticized after receiving the different grades of request of related application personnel, it is right The software package that request is issued carries out examination & approval processing and note, and after examination & approval pass through, server sends required software package or text automatically Shelves are to the position specified by application personnel.In this way, through the above steps, can realize the version application of software package, application approval, The functions such as software package publication improve the efficiency for issuing of software package, reduce weight to substitute the configuration control of artificial version publication Multiple labour, reduces cost of labor.
Optionally, in the other embodiment of the present invention, among step S240, it may further include following step Suddenly:The publishing policy that step (51), configuration software packet are issued automatically, to set the sequence between multiple software packages;Step (52), According to the sequence between set multiple software packages, multiple software packages are executed disposably while the operation of publication.
Since some mega projects need while issuing multiple software packages, and there are certain dependences between multiple software packages Property, the publishing policy that therefore, it is necessary to be issued automatically by configuration software packet, to set the sequencing between multiple software packages, It is equivalent to form a task chain.After the sequencing between having set multiple software packages, multiple software packages one can be executed The operation that secondary property is issued simultaneously.
Optionally, in the other embodiment of the present invention, among step S240, it may further include following step Suddenly:The publishing policy that step (61), configuration software packet are issued automatically, to set the version information of software package;Step (62) works as hair When existing Current software packet content has mistake, according to the version information of software package set in publishing policy, find current Package content corresponding to a preceding version for software package;Step (63) executes rollback operation, and preceding version institute is right The package content answered replaces Current software packet content.
Wherein, it is single that a publication is generated in step (61), the publishing policy issued automatically to configuration software packet.Described It issues in list, the code name of software package can be defined, version number, imprint, dispose the information such as handbook and storage address.Pass through Step (62) to step (64) is executed, can find that Current software packet content has mistake and project operation is caused to be asked Topic, or publication software package version it is wrong when, according to stored version information, succeed before searching and issued Software package version, and the publication of software package is carried out again, it avoids after there is mistake because of the software package currently issued, Wu Faji When will the succeed software package of publication be distributed to server, and then influence the use of user.To sum up, using embodiment of the present invention The software package method for automatically releasing provided can not only realize the automatic publication to software package, to save manpower and time, drop Low publication error rate so that user can use more sophisticated software packet after update as early as possible, and avoid unsuccessful because issuing And lead to the use for influencing user.
Optionally, in the other embodiment of the present invention, among step S240, it may further include following step Suddenly:A server administration interface is provided, to be monitored to the configuration of server.
Specifically, providing a server administration interface, to set the website corresponding to server, which is to pass through IIS is managed.In the prior art, website is if desired increased newly, then related personnel needs to log into server progress IIS clothes Business operation, so that newly-increased website is directed toward corresponding file.And in the present embodiment, then need not log into server with into Row IIS service operations, if under the server administration interface provided, to server carry out relevant configuration can (such as Website is established, or changes the path of file).In this way, the client being connected with server is issued receiving server Software package after, execute decoder software package operation and change text for storing file according to the relevant configuration of software package The path of part folder.Preferentially, it substitutes existing IIS using the windows services with independence to service, and uses efficiency of transmission Higher ICP/IP protocol replaces that existing safety is not high and the lower http protocol modes of efficiency of transmission, to reduce because of IIS Service breaks down and influences entire delivery system.
To sum up, the software package method for automatically releasing provided using embodiment of the present invention can not only ensure safety, keep away Exempt to influence the permission of entire server because changing file, and without logining server, according to providing one Server administration interface carries out relevant configuration to server, while reducing rate of making a mistake.
Optionally, in embodiments of the present invention, among step S230, following steps be may further include:Step Suddenly (81), based on the configuration file generated, add source code of the pseudo- data information to after compiling, grasped with executing subsequent packing Make;Step (82), when being packed into the corresponding software package of a setting site environment, the pseudo- data are matched in configuration file Information;Step (83) if, be matched to the pseudo- data information, extraction and pseudo- data information in sensitive information manages database Corresponding sensitive data information, and the pseudo- data information is replaced with into the sensitive data information.
In step (81), since the usemame/password of (such as test environment, production environment etc.) in each environment is not With, and the secrecy of each environment is also different, it is often more important that, in order to avoid in a specific environment (such as development environment) Usemame/password (such as production environment) is disclosed in other environments, therefore, in step (81), based on what is generated Configuration file adds source code of the pseudo- data information to after compiling, wherein the puppet data information can be character or character string Deng (such as " ABCD "), and do not have arbitrary meaning.In step (82), (such as produced when being packed into a setting site environment Environment) corresponding software package when, the matching pseudo- data information in the configuration file (such as cfg files).In step (83), If being matched to the pseudo- data information, extraction and puppet data information (such as " the ABCD ") phase in sensitive information manages database The sensitive data information (such as " the corresponding usemame/passwords of ABCD ") answered, and the pseudo- data information replaced with described Sensitive data information.
To sum up, repetition, reliable publication stream can be established by using software package method for automatically releasing of the present invention Journey to improve the publication quality of software package, and then avoids human error, and will can entirely issue process automation, is promoted The efficiency for issuing of entire software package, and then reduce related personnel and waste time among having no the duplication of labour of technology content, then Person can be such that multiple developers simultaneously participate in, and to increase the transparency of software development, and then avoid other people in team Member can not learn entire publishing process in time.
In addition, shown in Figure 3, the present invention also provides a kind of software package automated pubilication systems.The system comprises:Source generation Code acquiring unit 310, compilation of source code unit 320, packaged unit 330 and software package Dispatching Unit 340.
Wherein, the source code acquiring unit 310 to server receive transmitted by client publication instruction after, Obtain the source code of software package to be released.The source code of software package to be released can be stored in the local device of developer or Person is stored in the Source code management server (such as server of TFS patterns) of a centralized management, and without being limited thereto.Exploit person Member or tester or other related personnel can be selected to be sent by (website) website that client or foreground are provided Software package and its corresponding site environment, relevant parameter etc., to execute publication instruction.Server is receiving developer or survey After the posting request of examination personnel or other related personnel, it can call and obtain according to information such as title, the versions of software package The source code of corresponding software packet.
The compilation of source code unit 320 is compiled the source code by built-in compiler to server.Institute State the compiler that built-in compiler can be the multilingual such as C, PHP, Python, Java.The compiler can be this The common compiler of field technology personnel institute, will not enumerate herein.
The packaged unit 330 is regular according to built-in multiple site environments to server, by the source code after compiling It is packaged, to generate software package corresponding with site environment.
The software package of generation is distributed to server according to destination address by the software package Dispatching Unit 340.Root The software package of generation is distributed to phase according to destination address (according to the address of destination server previously set in collocation point) In the environment answered.
In an embodiment of the present invention, further comprise in the source code acquiring unit 310:Collocation point provides mould Block 311 and target requirement list provide module 312, as shown in Figure 4, wherein the collocation point provides module 311 to server A collocation point is provided, to determine corresponding destination server in site environment.It can be determined by the collocation point to be sent Site environment (such as development environment, test environment, production environment etc.) corresponding to code packet, each site environment correspond to phase The destination server (quantity etc. for including destination server) answered.The target requirement list provides module 312 to server A target requirement list is provided, to select code packet corresponding with target requirement, and then determination is corresponding with target requirement Site environment.That is, when selecting code packet (i.e. program) corresponding with target requirement, it may be determined that the software package will It is sent to corresponding site environment (such as test environment, production environment).
Further, shown in Figure 5, the packaged unit 330 may include:Template library calling module 331, configuration file Data search module 333, configuration file generation module 335 and configuration file add module 337.
Wherein, the template library calling module 331 is calling the template library of all site environments configuration.All scene rings The template library of border configuration (such as test environment, production environment etc.) can be stored among a file, and this document is similar to text File.
The profile data searching module 333 to pass through a multi-environment configuration file Core Generator and according to and mesh The corresponding code packet of mark demand searches configuration file corresponding with site environment in the template library of all site environments configuration Data.When developer or tester or other related personnel are when selecting software package to be released, just automatically confirm that Corresponding environment (such as development environment, test environment, production environment), and each site environment has its corresponding configuration Therefore file data is given birth to using the environmental labels for the initial position for being stored in above-mentioned file, and by multi-environment configuration file Configuration file corresponding with site environment is searched in the template library that all site environments configure at tool (configtools) Data, the wherein environmental labels have uniqueness, and to distinguish different environment (such as development environment, test environment, production Environment).
The configuration file generation module 335 is opposite successfully to be extracted in the template library that all site environments configure After the profile data answered, the profile data extracted is incorporated to profile template, is matched accordingly with generating Set file.That is, successfully extracting corresponding profile data (its in the template library of all site environments configuration For xml document) after, the profile data extracted is incorporated to profile template (it is tpl files), to generate phase The configuration file answered (it is cfg files).Above-mentioned tpl files are to configuration node, and xml document according to varying environment generating Corresponding profile data, is equivalent to data source, to provide the occurrence corresponding to each environment, such as user name/close Code etc. (usemame/password in each environment is different).
The configuration file add module 337, to by the configuration file generated be added to compiling after source code it In, to execute subsequent packaging operation.The code packet generated based on above-mentioned compiling source code (such as once generates all environment Code packet), and configuration file is respectively implanted in corresponding code packet, to generate corresponding software package.In this implementation In mode, the code packet of 4 kinds of varying environments (such as development environment, test environment, production environment) can be once generated.
To sum up, foundation repetition can be realized by the software package automated pubilication system, reliably issue flow, to improve The publication quality of software package, and then human error is avoided, and process automation will can be entirely issued, promote entire software package Efficiency for issuing, and then reduce related personnel waste time among having no the duplication of labour of technology content.
Optionally, in one embodiment of the present invention, the software package Dispatching Unit 340 further comprises:Issue plan Slightly configuration module 341 and the power of examination and approval provides module 342, as shown in Figure 6.
Wherein, the publishing policy that the publishing policy configuration module 341 is issued automatically to configuration software packet.By described Publishing policy configuration module 341 can generate a publication list, in the publication list, can define code name, the version of software package Number, imprint, deployment the information such as handbook and storage address.In this way, multiple developers can be according to the publication list Information and participate in same project, to increase the transparency of software development, and then avoid the other staff in team can not be timely Learn entire publishing process.
The power of examination and approval provides module 342 to provide the corresponding power of examination and approval according to publishing policy.In this way, having phase Answer approving person's (such as exploitation, test, PMO, operation maintenance personnel) of the power of examination and approval in the difference etc. for receiving related application personnel After the request of grade, examination & approval processing and note are carried out to the software package of request publication, after examination & approval pass through, server sends institute automatically The position specified by software package or document to application personnel needed.Thus, it is possible to realize that the version application of software package, application are examined Batch, the functions such as software package publication improve the efficiency for issuing of software package, subtract to substitute the configuration control of artificial version publication Few duplication of labour, reduces cost of labor.
Optionally, in another embodiment of the present invention, the software package Dispatching Unit 340 further comprises:Publication Tactful configuration module 341 and more software package release modules 343, as shown in Figure 7.Wherein, the publishing policy configuration module 341 is used With the publishing policy that configuration software packet is issued automatically, to set the sequence between multiple software packages.More software packages issue mould Block 343, to the behaviour for according to the sequence between set multiple software packages, executing multiple software packages disposably while issuing Make.
Specifically, since some mega projects need while issuing multiple software packages, and exist between multiple software packages Certain dependence, the publishing policy that therefore, it is necessary to be issued automatically by configuration software packet, to set between multiple software packages Sequencing is equivalent to form a task chain.After the sequencing between having set multiple software packages, it can execute multiple The software package disposably operation of publication simultaneously.
Optionally, in another embodiment of the present invention, the software package Dispatching Unit 340 further comprises:Publication Tactful configuration module 341, package content searching module 344 and rollback operation execution module 345, as shown in Figure 8.Wherein, institute The publishing policy that publishing policy configuration module 341 is issued automatically to configuration software packet is stated, to set the version information of software package. The package content searching module 344 to when find Current software packet content have mistake when, according to institute in publishing policy The version information of the software package of setting finds the package content corresponding to a preceding version for Current software packet.Described time Operation executing module 345 is moved back to execute rollback operation, the package content corresponding to a preceding version is replaced current soft Part packet content.In this way, finding that Current software packet content has mistake and project operation is caused to go wrong, or publication is soft When the version of part packet is wrong, according to stored version information, succeeded the software package version issued before searching, and The publication for carrying out again software package is avoided after there is mistake because of the software package currently issued, will can not successfully be issued in time Software package be distributed to server, and then influence the use of user.To sum up, it can not only be realized to software package using above-mentioned module Automatic publication, to save manpower and time, reduce publication error rate so that user can as early as possible use update after it is more perfect Software package, and avoid because issue it is unsuccessful due to cause influence user use.
Optionally, in another embodiment of the present invention, the software package Dispatching Unit 340 further comprises:Service Device configuration monitoring module 346, as shown in Figure 9.Specifically, the server configuration monitoring module 346 is providing a service Device administration interface, with the configuration (such as establish website, or change the path of file) to server to be monitored.This Sample can not only ensure safety, avoid the permission that entire server is influenced because changing file, and without logining server In the case of, relevant configuration is carried out to server by server configuration monitoring module, while reducing rate of making a mistake.
Optionally, in another embodiment of the present invention, the packaged unit 330 further comprises:Pseudo- data information Add module 332, pseudo- data information matching module 334 and sensitive data information replacement module 336, as shown in Figure 10.
Wherein, the pseudo- data information add module 332 is to based on the configuration file generated, the pseudo- data information of addition Source code after to compiling, to execute subsequent packaging operation.The puppet data information matching module 334 is packed into one to work as When setting the corresponding software package of site environment, the pseudo- data information is matched in configuration file.The sensitive data information Replacement module 336 is to when being matched to the pseudo- data information, extraction and pseudo- data are believed in sensitive information manages database Corresponding sensitive data information is ceased, and the pseudo- data information is replaced with into the sensitive data information.
Specifically, since the usemame/password of (such as test environment, production environment etc.) in each environment is different , and the secrecy of each environment is also different, it is often more important that, in order to avoid in a specific environment (such as development environment) (such as production environment) is disclosed usemame/password in other environments, therefore, passes through the pseudo- data information add module 332 based on the configuration file generated, to add source code of the pseudo- data information to after compiling, wherein the puppet Data information can be character or character string etc. (such as " ABCD "), and not have arbitrary meaning.Pass through the pseudo- data information Matching module 334 is with when being packed into setting site environment (such as production environment) corresponding software package, in configuration file The matching pseudo- data information in (such as cfg files).By sensitive data information replacement module 336 the pseudo- number is matched to work as It is believed that when breath, the extraction sensitive data information corresponding with puppet data information (such as " ABCD ") in sensitive information manages database (such as " the corresponding usemame/passwords of ABCD "), and the pseudo- data information is replaced with into the sensitive data information.
Obviously, it will be understood by those skilled in the art that each module or each step of aforementioned present invention embodiment can be used General computer installation realizes that they can be concentrated on single computer installation, or be distributed in multiple computers Device it is combined at network on, optionally, they can be realized with the software package source code that computer installation can perform, from And can be stored in storage device and be executed by computer installation, and in some cases, it can be to be different from Sequence herein executes shown or described step, either by they be respectively prepared each integrated circuit modules or by it In multiple modules or step be fabricated to single integrated circuit module to realize.In this way, embodiment of the present invention is not limited to appoint What specific hardware and software combines.
The above is only a preferred embodiment of the present invention, it is noted that for the ordinary skill people of the art Member, various improvements and modifications may be made without departing from the principle of the present invention, these improvements and modifications also should be regarded as Protection scope of the present invention.

Claims (14)

1. a kind of software package method for automatically releasing, which is characterized in that including:
(1) server obtains the source code of software package to be released after receiving the publication instruction transmitted by client;
(2) server is compiled the source code by built-in compiler;
(3) source code after compiling is packaged by server according to built-in multiple site environments rule, to generate and scene The corresponding software package of environment;
(4) software package of generation is distributed by server according to destination address;
Further comprise in step (1):
(11) server provides a collocation point, to determine corresponding destination server in site environment;
(12) server provides a target requirement list, to select code packet corresponding with target requirement, and then determining and mesh The corresponding site environment of mark demand.
2. according to the software package method for automatically releasing described in claim 1, which is characterized in that further wrapped in step (3) It includes:
(31) template library of all site environment configurations of server calls;
(32) server is by a multi-environment configuration file Core Generator and according to code packet corresponding with target requirement, in institute Have and searches profile data corresponding with site environment in the template library of site environment configuration;
(33) it after successfully extracting corresponding profile data in the template library of all site environments configuration, will be carried The profile data taken is incorporated to profile template, to generate corresponding configuration file;
(34) configuration file generated is added among the source code after compiling, to execute subsequent packaging operation.
3. according to the software package method for automatically releasing described in claim 1, which is characterized in that further wrapped in step (4) It includes:
(41) publishing policy that configuration software packet is issued automatically;
(42) the corresponding power of examination and approval is provided according to publishing policy.
4. according to the software package method for automatically releasing described in claim 1, which is characterized in that further wrapped in step (4) It includes:
(51) publishing policy that configuration software packet is issued automatically, to set the sequence between multiple software packages;
(52) according to the sequence between set multiple software packages, multiple software packages are executed disposably while the operation of publication.
5. according to the software package method for automatically releasing described in claim 1, which is characterized in that further wrapped in step (4) It includes:
(61) publishing policy that configuration software packet is issued automatically, to set the version information of software package;
(62) when finding that Current software packet content has mistake, believed according to the version of software package set in publishing policy Breath, finds the package content corresponding to a preceding version for Current software packet;
(63) rollback operation is executed, the package content corresponding to a preceding version is replaced into Current software packet content.
6. according to the software package method for automatically releasing described in claim 1, which is characterized in that further wrapped in step (4) It includes:
(71) server administration interface is provided, to be monitored to the configuration of server.
7. according to the software package method for automatically releasing described in claim 2, which is characterized in that in step (3), further wrap It includes:
(81) based on the configuration file generated, source code of the pseudo- data information to after compiling is added, to execute subsequent packing Operation;
(82) when being packed into the corresponding software package of a setting site environment, the pseudo- data letter is matched in configuration file Breath;
(83) if being matched to the pseudo- data information, extraction is corresponding with pseudo- data information in sensitive information manages database Sensitive data information, and the pseudo- data information is replaced with into the sensitive data information.
8. a kind of software package automated pubilication system, which is characterized in that including:
Source code acquiring unit obtains software to be released to server after receiving the publication instruction transmitted by client The source code of packet;
Compilation of source code unit is compiled the source code by built-in compiler to server;
Source code after compiling is packaged by packaged unit to server according to built-in multiple site environments rule, with Generate software package corresponding with site environment;
The software package of generation is distributed to server according to destination address by software package Dispatching Unit;
In the source code acquiring unit, further comprise:
Collocation point provides module, a collocation point is provided to server, to determine corresponding destination server in site environment;
Target requirement list provides module, and a target requirement list is provided to server, corresponding with target requirement to select Code packet, and then determine corresponding with target requirement site environment.
9. software package automated pubilication system according to claim 8, which is characterized in that the packaged unit is further wrapped It includes:
Template library calling module, to the template library of all site environment configurations of server calls;
Profile data searching module passes through a multi-environment configuration file Core Generator and basis and target need to server Corresponding code packet is sought, configuration file number corresponding with site environment is searched in the template library of all site environments configuration According to;
Configuration file generation module, successfully to extract corresponding configuration text in the template library that all site environments configure The profile data extracted is incorporated to profile template, after to generate corresponding configuration file by number of packages;
Configuration file add module, among the configuration file generated is added to the source code after compiling, after execution After packaging operation.
10. software package automated pubilication system according to claim 8, which is characterized in that the software package Dispatching Unit into One step includes:
Publishing policy configuration module, the publishing policy issued automatically to configuration software packet;
The power of examination and approval provides module, to provide the corresponding power of examination and approval according to publishing policy.
11. software package automated pubilication system according to claim 8, which is characterized in that the software package Dispatching Unit into One step includes:
Publishing policy configuration module, to the publishing policy that configuration software packet is issued automatically, to set between multiple software packages Sequentially;More software package release modules, according to the sequence between set multiple software packages, it is primary to execute multiple software packages Property simultaneously publication operation.
12. software package automated pubilication system according to claim 8, which is characterized in that the software package Dispatching Unit into One step includes:
Publishing policy configuration module, to the publishing policy that configuration software packet is issued automatically, to set the version information of software package;
Package content searching module, to when finding that Current software packet content has mistake, according to set in publishing policy The version information of fixed software package finds the package content corresponding to a preceding version for Current software packet;
Rollback operation execution module works as the package content replacement corresponding to a preceding version to execute rollback operation Preceding package content.
13. software package automated pubilication system according to claim 8, which is characterized in that the software package Dispatching Unit into One step includes:
Server configuration monitoring module, to provide a server administration interface, to be monitored to the configuration of server.
14. software package automated pubilication system according to claim 9, which is characterized in that the packaged unit is further wrapped It includes:
Pseudo- data information add module, based on the configuration file generated, to add source generation of the pseudo- data information to after compiling Code, to execute subsequent packaging operation;
Pseudo- data information matching module, to when being packed into the corresponding software package of a setting site environment, in configuration file The middle matching pseudo- data information;
Sensitive data information replacement module, if to be matched to the pseudo- data information, in sensitive information manages database Extraction sensitive data information corresponding with pseudo- data information, and the pseudo- data information is replaced with into the sensitive data and is believed Breath.
CN201510706186.7A 2015-10-27 2015-10-27 Software package method for automatically releasing and system Active CN105373401B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510706186.7A CN105373401B (en) 2015-10-27 2015-10-27 Software package method for automatically releasing and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510706186.7A CN105373401B (en) 2015-10-27 2015-10-27 Software package method for automatically releasing and system

Publications (2)

Publication Number Publication Date
CN105373401A CN105373401A (en) 2016-03-02
CN105373401B true CN105373401B (en) 2018-09-07

Family

ID=55375628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510706186.7A Active CN105373401B (en) 2015-10-27 2015-10-27 Software package method for automatically releasing and system

Country Status (1)

Country Link
CN (1) CN105373401B (en)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291437A (en) * 2016-04-13 2017-10-24 上海思立微电子科技有限公司 Issue bag version information production method, device and terminal
CN107341150B (en) * 2016-04-28 2020-10-09 泰康保险集团股份有限公司 Automatic publishing method and device
CN105912375A (en) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 Method and device for deploying application programs to servers
CN106095442B (en) * 2016-06-13 2021-07-02 福州智永信息科技有限公司 Automatic high-speed package outputting method based on web
CN106445488A (en) * 2016-07-01 2017-02-22 厦门易名科技股份有限公司 Code release and backspacing methods
CN106325881A (en) * 2016-08-30 2017-01-11 泰康保险集团股份有限公司 Method and device for automatic generation of distribution package
CN106528170A (en) * 2016-11-25 2017-03-22 上海找钢网信息科技股份有限公司 Software package release method and system based on multi-language environment
CN106815052A (en) * 2017-01-10 2017-06-09 南威软件股份有限公司 A kind of method of the rapid deployment system for being adapted to multi-environment configuration
CN106919387A (en) * 2017-02-17 2017-07-04 上海斐讯数据通信技术有限公司 A kind of software delivery system and dissemination method
CN106980501A (en) * 2017-02-23 2017-07-25 北京小鸟看看科技有限公司 A kind of software package management method, device and system
CN107145377A (en) * 2017-03-17 2017-09-08 广州视源电子科技股份有限公司 Software compilation method and system
CN107122182B (en) * 2017-04-14 2021-08-24 努比亚技术有限公司 Method and system for constructing and releasing code
CN107291494B (en) * 2017-05-27 2021-02-02 北京五八信息技术有限公司 Method and device for generating application program installation package
CN107315596A (en) * 2017-07-26 2017-11-03 郑州云海信息技术有限公司 A kind of code is packed dispositions method and device automatically
CN107491390A (en) * 2017-08-15 2017-12-19 深圳市慧择时代科技有限公司 The method and device of replacement test environment configuration information
CN109582353A (en) * 2017-09-26 2019-04-05 北京国双科技有限公司 The method and device of embedding data acquisition code
CN107656742A (en) * 2017-09-27 2018-02-02 北京奇虎科技有限公司 A kind of software product dissemination method and device
CN107729046A (en) * 2017-10-17 2018-02-23 福建富士通信息软件有限公司 A kind of software version automation dissemination method and device
CN107678969B (en) * 2017-10-18 2021-04-02 阿里巴巴(中国)有限公司 Test version release method and device, version control equipment and test machine
CN109725911A (en) * 2017-10-31 2019-05-07 北京国双科技有限公司 A kind of multi-environment project dispositions method, device, storage medium and processor
CN108959086A (en) * 2018-06-29 2018-12-07 北京金山数字娱乐科技有限公司 Program bag tests dispositions method, device, system, electronic equipment and storage medium
CN108897571A (en) * 2018-06-29 2018-11-27 北京金山数字娱乐科技有限公司 Program is packaged dispositions method, device, system, electronic equipment and storage medium
CN109101267A (en) * 2018-07-31 2018-12-28 上海携程金融信息服务有限公司 Using method for release management, device, electronic equipment, storage medium
CN109165018A (en) * 2018-09-10 2019-01-08 深圳市泰洲科技有限公司 Code method for automatically releasing, device, computer equipment and storage medium
CN109725910A (en) * 2018-09-12 2019-05-07 网联清算有限公司 Standardization dissemination method, distributing device and the delivery system of application program
CN111301789A (en) * 2018-12-11 2020-06-19 顺丰科技有限公司 Application software packaging method and device
CN109656984A (en) * 2018-12-21 2019-04-19 树根互联技术有限公司 Data rule management system, method and apparatus
CN109871241A (en) * 2019-01-02 2019-06-11 石化盈科信息技术有限责任公司 A kind of configuration method of Cross-environment application server
CN111913720A (en) * 2019-05-10 2020-11-10 大唐移动通信设备有限公司 Program deployment method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798153A (en) * 2004-12-28 2006-07-05 国际商业机器公司 Runtime optimizing applications method and system for a target system from within a deployment server
CN101453367A (en) * 2007-11-30 2009-06-10 华为技术有限公司 Software deployment method and system, software deployment server and user server
CN103019732A (en) * 2012-12-25 2013-04-03 深圳市天维尔通讯技术有限公司 Method and system for installation and deployment of integrated software based on province, city and county
CN103793217A (en) * 2012-10-31 2014-05-14 国际商业机器公司 Method and system for quick software configuration
CN104765620A (en) * 2014-01-02 2015-07-08 国际商业机器公司 Programming module deploying method and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1187010A3 (en) * 2000-07-12 2004-06-30 IvyTeam AG Method and system for implementing process-based web applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798153A (en) * 2004-12-28 2006-07-05 国际商业机器公司 Runtime optimizing applications method and system for a target system from within a deployment server
CN101453367A (en) * 2007-11-30 2009-06-10 华为技术有限公司 Software deployment method and system, software deployment server and user server
CN103793217A (en) * 2012-10-31 2014-05-14 国际商业机器公司 Method and system for quick software configuration
CN103019732A (en) * 2012-12-25 2013-04-03 深圳市天维尔通讯技术有限公司 Method and system for installation and deployment of integrated software based on province, city and county
CN104765620A (en) * 2014-01-02 2015-07-08 国际商业机器公司 Programming module deploying method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
利用IBM UrbanCode Deploy实现企业应用部署自动化;杨敏强;《https://www.ibm.com/developerworks/cn/rational/1401_yangmq_urbancode/》;20140127;1-22页 *

Also Published As

Publication number Publication date
CN105373401A (en) 2016-03-02

Similar Documents

Publication Publication Date Title
CN105373401B (en) Software package method for automatically releasing and system
KR101314949B1 (en) Integration environment generator
US20160179495A1 (en) Device and method for packaging application
CN101946261A (en) Automated model generation for computer based business process
CN105786506A (en) User interface automatic-generation system and method
CN106156186A (en) A kind of data model managing device, server and data processing method
CN107463362A (en) The method and system of lasting deployment based on multiple Jenkins
CN106775623A (en) Plan the processing method and processing device of allocation list
Krishna et al. IoT Composer: Composition and deployment of IoT applications
Chechina et al. Evaluating scalable distributed Erlang for scalability and reliability
Ahmaro et al. Taxonomy, definition, approaches, benefits, reusability levels, factors and adaption of software reusability: a review of the research literature
CN107025108A (en) From Source code management(SCM)Ranked data is exported to Production Lifecycle Management by system(PLM) system
US9116708B2 (en) Program creation support apparatus, program, and information system
CN110287002A (en) A kind of ether mill virtual machine defect inspection method and system
Lamela Seijas et al. Towards property-based testing of RESTful web services
CN103324494B (en) Automatic method, server and the system for making patch
CN103984554B (en) The generation method and device of Software for Design document
CN103995699A (en) Electric power enterprise information system development method based on MDA
CN106843935A (en) A kind of method and system for automatically updating static file version number
Michalik et al. Towards a solution for change impact analysis of software product line products
CN105867892A (en) Centralized management method and system of multi-platform development
Murtaza et al. Structured Language Requirement Elicitation Using Case Base Reasoning
EP3576858A1 (en) Computerized gaming system and method of operating thereof
Smirnov et al. Linked-data integration for workflow-based computational experiments
CN104298603B (en) A kind of inspection method of the correctness of application system version structure

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
CB02 Change of applicant information

Address after: 201815 Shanghai Industrial Zone, Jiading Huiyuan Road, No. 6, building 2, room E, room, 208

Applicant after: Shanghai looking for steel network information Polytron Technologies Inc

Address before: 201815 Shanghai, Jiading Industrial Zone, Huiyuan Road, No. F, building, room 2, floor E, room 208

Applicant before: Shanghai steel electron rich commercial affairs company limited

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant