CN105373401A - Method and system for automatically releasing software package - Google Patents

Method and system for automatically releasing software package Download PDF

Info

Publication number
CN105373401A
CN105373401A CN201510706186.7A CN201510706186A CN105373401A CN 105373401 A CN105373401 A CN 105373401A CN 201510706186 A CN201510706186 A CN 201510706186A CN 105373401 A CN105373401 A CN 105373401A
Authority
CN
China
Prior art keywords
software package
server
software
order
module
Prior art date
Application number
CN201510706186.7A
Other languages
Chinese (zh)
Other versions
CN105373401B (en
Inventor
孙维杰
Original Assignee
上海钢富电子商务有限公司
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 上海钢富电子商务有限公司 filed Critical 上海钢富电子商务有限公司
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 method and a system for automatically releasing a software package. The method comprises the following steps: (1) after receiving a publishing instruction sent by a client, a server obtains source code of a software package to be released; (2) the server compiles the source code with a built-in compiler; (3) the server packages the compiled source code according to a plurality of built-in site environmental rules, to generate the software package corresponding to a site environment; and (4) the server distributes the generated software package according to a destination address. According to the present invention, not only a repeated and reliable release process can be established to improve the release quality of the software package, but also the entire release process can be automated to improve the release efficiency of the entire software package, and furthermore, multiple developers can participate at the same time 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, particularly relate to a kind of software package method for automatically releasing and system.
Background technology
Along with the increase of software requirement, the development of technology, and people are to the raising of the requirement of the specific setting of the application of software or product, various application or product or improving of software function are constantly weeded out the old and bring forth the new.In prior art, need developer to develop in this locality to application or the research and development of product or software and compile, then long-rangely server is logined, and the software package after compiling is uploaded onto the server, simultaneously according to different site environments rule, the configuration file that amendment is corresponding with site environment on the server, then performs distribution operation, to complete release tasks according to destination address.Such as, shown in Figure 1: 1) the local generation of exploitation issues bag; 2) logon server; 3) upload issue bag, and revise configuration file; 4) IIS is operated.
Can be found out by said process, need to spend a large amount of manpower and time to application or the issue of product or software or renewal.Because of comparatively of a specified duration when artificial releasing software bag accounts for, and instability is high, easily causes human error, and efficiency is lower, and then makes user cannot use the application after renewal or product or software more rapidly, reduces Consumer's Experience.Moreover whole software package issuing process does not have the transparency, and is not suitable for multi agent cooperation environment.
Therefore, need badly a kind of software package method for automatically releasing and system are provided.
Summary of the invention
In order to solve the problem, the invention provides a kind of software package method for automatically releasing and system, it can not only be set up repetition, issue flow process reliably, to improve the cloth quality that software package is sent out; And by whole issue process automation, the efficiency for issuing of whole software package can be promoted; Moreover it can make multiple developer participate in simultaneously, to increase the transparency of software development.
According to an aspect of of the present present invention, the invention provides a kind of software package method for automatically releasing, it comprises: (1) server, after receiving the issuing command that client sends, obtains the source code of software package to be released; (2) server is compiled described source code by built-in compiler; (3) server is according to built-in multiple site environment rules, packs, the source code after compiling to generate the software package corresponding with site environment; (4) server is distributed according to the software package of destination address by generation.
According to another aspect of the present invention, present invention also offers a kind of software package automated pubilication system, it comprises: source code acquiring unit, in order to server after receiving the issuing command that client sends, obtains the source code of software package to be released; Compilation of source code unit, is compiled described source code by built-in compiler in order to server; Packaged unit, in order to server according to built-in multiple site environment rules, packs the source code after compiling, to generate the software package corresponding with site environment; Software package Dispatching Unit, distributes according to the software package of destination address by generation in order to server.
The invention has the advantages that, by adopting software package method for automatically releasing of the present invention and system, it can set up repetition, reliable issue flow process, to improve the issue quality of software package, and then avoid human error, and can by whole issue process automation, promote the efficiency for issuing of whole software package, and then minimizing related personnel loses time among the duplication of labour having no technology content, moreover, it can make multiple developer participate in simultaneously, to increase the transparency of software development, and then avoid the other staff in team cannot learn whole publishing process in time.
Accompanying drawing explanation
According to hereafter by reference to the accompanying drawings to the detailed description of the specific embodiment of the invention, those skilled in the art will understand the present invention above-mentioned and other objects, advantage and feature more.
By reading the detailed description of following detailed description, various other advantage and benefit will become cheer and bright for those of ordinary skill in the art.Accompanying drawing only for illustrating the object of embodiment, and does not think limitation of the present invention.And in whole accompanying drawing, represent identical parts by identical reference symbol.
Fig. 1 is the flow chart of steps that in prior art, software package is issued;
Fig. 2 is the flow chart of steps 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 representation of source code acquiring unit in an embodiment of the present invention;
Fig. 5 is the structural representation of packaged unit in an embodiment of the present invention;
Fig. 6 is the structural representation of software package Dispatching Unit in an embodiment of the present invention;
Fig. 7 is the structural representation of software package Dispatching Unit in another embodiment of the present invention;
Fig. 8 is the structural representation of software package Dispatching Unit in another embodiment of the present invention;
Fig. 9 is the structural representation of software package Dispatching Unit in another embodiment of the present invention;
Figure 10 is the structural representation of packaged unit in another embodiment of the present invention.
Embodiment
Below with reference to the accompanying drawings exemplary embodiment of the present invention is described in more detail.Although show exemplary embodiment of the present invention in accompanying drawing, but should be appreciated that and can realize the present invention in a variety of manners and not answer the restriction of set forth embodiment.On the contrary, provide these embodiments to be in order to more thoroughly the present invention can be understood, and scope of the present invention intactly can be conveyed to those skilled in the art.
Shown in Figure 2, the invention provides a kind of software package method for automatically releasing, the method comprises the following steps:
Step S210: server, after receiving the issuing command that client sends, obtains the source code of software package to be released.
In this step, the source code of software package to be released can be stored in the local device of developer or be stored in the Source code management server (server as TFS pattern) of a centralized management, and is not limited thereto.(website) website that developer or tester or other related personnel can be provided by client or foreground, selects software package to be sent and corresponding site environment, correlation parameter etc., to perform issuing command.Server, after the issue request receiving developer or tester or other related personnel, can call according to information such as the title of software package, versions and obtain the source code of corresponding software bag.In the present embodiment, may further include following steps: (11) server provides a collocation point, to determine destination server corresponding in site environment.(12) server provides a target requirement list, to select the code packages corresponding with target requirement, and then determines the site environment corresponding with target requirement.Wherein, in step (11), by a collocation point, can determine the site environment (such as development environment, test environment, production environment etc.) corresponding to code packages to be sent, each site environment corresponds to corresponding destination server (comprising the quantity etc. of destination server).In step (12), when selecting code packages (i.e. the program) corresponding with target requirement, can determine that this software package will be sent to corresponding site environment (such as test environment, production environment).
Step S220: server is compiled described source code by built-in compiler.
In this step, server can by built-in compiler, and multilingual compiler such as such as C, PHP, Python, Java etc. compiles.This compiler can the compiler commonly used by those skilled in the art, will not enumerate at this.
Step S230: the source code after compiling, according to built-in multiple site environment rules, is packed, to generate the software package corresponding with site environment by server.
After having compiled code, produce different software packages according to different configuration files.
In the present embodiment, may further include following steps: the template base of all site environment configurations of (31) server calls; (32) server is by a multi-environment configuration file Core Generator also according to the code packages corresponding with target requirement, in the template base that all site environments configure, search the profile data corresponding with site environment; (33), successfully extract corresponding profile data in the template base that all site environments configure after, extracted profile data is incorporated to profile template, to generate corresponding configuration file; (34) generated configuration file is added among the source code after compiling, to perform follow-up packing operation.
Wherein, in step (31), the template base of all site environments configuration (such as test environment, production environment etc.) can be stored among a file, and this file is similar to text.
In step (32), when developer or tester or other related personnel are when selecting software package to be released, just automatically confirm corresponding environment (such as development environment, test environment, production environment), and each site environment all has the profile data of its correspondence, therefore, utilize the environmental labels being stored in the reference position of above-mentioned file, and search the profile data corresponding with site environment in the template base configured at all site environments by multi-environment configuration file Core Generator (configtools), wherein this environmental labels has uniqueness, and in order to distinguish different environment (such as development environments, test environment, production environment).
In step (33), successfully extract corresponding profile data (it is xml file) in the template base that all site environments configure after, extracted profile data is incorporated to profile template (it is tpl file), to generate corresponding configuration file (it is for cfg file).Above-mentioned tpl file is in order to configuration node, xml file is in order to produce corresponding profile data according to varying environment, be equivalent to data source, in order to provide the occurrence that each environment is corresponding, such as usemame/password etc. (usemame/password in each environment is different).
In step (34), based on the code packages (such as once generating the code packages of all environment) that above-mentioned compile source code generates, and configuration file is placed in respectively in corresponding code packages, to generate corresponding software package.In the present embodiment, the code packages of 4 kinds of varying environments (such as development environment, test environment, production environment) can once be generated.
Step S240: server is distributed according to the software package of destination address by generation.
In this step, according to destination address (address according to previous destination server set in collocation point), the software package of generation can be distributed in corresponding environment.
As can be seen here, by performing above-mentioned steps S210 to S240, can realize setting up repetition, issuing flow process reliably, to improve the issue quality of software package, and then avoid human error, and by whole issue process automation, can promote the efficiency for issuing of whole software package, and then minimizing related personnel loses time among the duplication of labour having no technology content.
In a preferred embodiment of the invention, among step S240, may further include following steps: the publishing policy that step (41), configuration software bag are issued automatically; Step (42), provide the corresponding power of examination and approval according to publishing policy.
Wherein, in step (41), generate one and issue list, the publishing policy automatically issued in order to configuration software bag.In described issue is single, the information such as the code name of software package, version number, imprint, deployment handbook and storage address can be defined.Like this, multiple developer can participate in same project according to the information of described issue list, to increase the transparency of software development, and then avoids the other staff in team cannot learn whole publishing process in time.
In step (42), provide the corresponding power of examination and approval according to publishing policy.Like this, there is approving person's (such as develop, test, PMO, operation maintenance personnel) of the corresponding power of examination and approval after the request of different brackets receiving related application personnel, the software package that request is issued is carried out examination & approval process and explained, examination & approval are by rear, and server sends required software package or the position specified by document to application personnel automatically.Like this, by above-mentioned steps, the functions such as the version application of software package, application approval, software package issue can be realized, thus the configuration substituting artificial version issue controls, and improves the efficiency for issuing of software package, reduces the duplication of labour, reduce cost of labor.
Optionally, in other embodiments of the present invention, among step S240, may further include following steps: the publishing policy that step (51), configuration software bag are issued automatically, to set the order between multiple software package; Step (52), according to the order between set multiple software packages, perform the disposable operation of simultaneously issuing of multiple software package.
Because some mega projects need to issue multiple software package simultaneously, and between multiple software package, there is certain dependence, therefore, need the publishing policy automatically issued by configuration software bag, to set the sequencing between multiple software package, be equivalent to formation one task chain.After having set the sequencing between multiple software package, the disposable operation of simultaneously issuing of multiple software package can be performed.
Optionally, in other embodiments of the present invention, among step S240, may further include following steps: the publishing policy that step (61), configuration software bag are issued automatically, with the version information of setting software bag; Step (62), when finding that Current software bag content has mistake, according to the version information of software package set in publishing policy, find the software package content corresponding to a front version of Current software bag; Step (63), execution rollback operation, to replace Current software bag content by the software package content corresponding to a front version.
Wherein, in step (61), generate one and issue list, the publishing policy automatically issued in order to configuration software bag.In described issue is single, the information such as the code name of software package, version number, imprint, deployment handbook and storage address can be defined.By performing step (62) to step (64), can mistake be had in discovery Current software bag content and cause project operation to go wrong, or the version of releasing software bag wrong time, according to the version information stored, the software package version of success issue before searching, and carry out again the issue of software package, avoid after mistake appears in the software package because of current issue, in time the software package that success is issued cannot be distributed to server, and then affect the use of user.To sum up, the software package method for automatically releasing adopting embodiment of the present invention to provide can not only realize the automatic issue to software package, to save manpower and time, reduce and issue error rate, make user can to use after renewal sophisticated software bag more as early as possible, and avoid because issuing unsuccessful and causing affecting the use of user.
Optionally, in other embodiments of the present invention, among step S240, may further include following steps: provide a server administration interface, to monitor the configuration of server.
Specifically, provide a server administration interface, to set the website corresponding to server, this website is managed by IIS.In the prior art, if desired newly-increased website, so related personnel needs to login to carry out IIS service operations to server, points to corresponding file to make newly-increased website.And in the present embodiment, then do not need to login to server to carry out IIS service operations, as long as under a provided server administration interface, carrying out relevant configuration to server can (such as set up website, or change the path of file).Like this, the client be connected with server, after receiving the software package that server issues, performs decoder software package operation and changes the path of the file for storing documents according to the relevant configuration of software package.Preferentially, the windows service with independence is adopted to substitute existing IIS service, and adopt the higher ICP/IP protocol of transfer efficiency to replace the not high and http protocol mode that transfer efficiency is lower of existing security, thus reduce and affect whole delivery system because IIS service is broken down.
To sum up, the software package method for automatically releasing adopting embodiment of the present invention to provide can not only ensure safety, avoid the authority affecting whole server because of amendment file, and when without the need to logining server, according to provide a server administration interface to carry out relevant configuration to server, reduce simultaneously and to make a mistake rate.
Optionally, in embodiments of the present invention, among step S230, may further include following steps: step (81), based on generated configuration file, add the source code after pseudo-data message to compiling, to perform follow-up packing operation; Step (82), when being packed into the corresponding software package of a setting site environment, in configuration file, mate described pseudo-data message; Step (83) if match described pseudo-data message, is then extracted the sensitive data information corresponding with pseudo-data message, and described pseudo-data message is replaced with described sensitive data information in sensitive information management database.
In step (81), due to (such as test environment in each environment, production environment etc.) usemame/password be different, and the secrecy of each environment is also different, the more important thing is, in order to avoid the usemame/password in a specific environment (such as development environment) in other environments (such as production environment) be disclosed, therefore, in step (81), based on generated configuration file, add the source code after pseudo-data message to compiling, wherein said pseudo-data message can be character or character string etc. (such as " ABCD "), and not there is any meaning.In step (82), when being packed into the corresponding software package of a setting site environment (such as production environment), pseudo-data message as described in coupling in configuration file (as cfg file).In step (83), if match described pseudo-data message, then extract in sensitive information management database and pseudo-data message (such as " ABCD ") sensitive data information (such as " ABCD " corresponding usemame/password) accordingly, and described pseudo-data message is replaced with described sensitive data information.
To sum up, repetition can be set up by adopting software package method for automatically releasing of the present invention, issue flow process reliably, to improve the issue quality of software package, and then avoid human error, and can by whole issue process automation, promote the efficiency for issuing of whole software package, and then minimizing related personnel loses time among the duplication of labour having no technology content, moreover, it can make multiple developer participate in simultaneously, to increase the transparency of software development, and then avoid the other staff in team cannot learn whole publishing process in time.
In addition, shown in Figure 3, the present invention also provides a kind of software package automated pubilication system.Described system comprises: source code acquiring unit 310, compilation of source code unit 320, packaged unit 330 and software package Dispatching Unit 340.
Wherein, described source code acquiring unit 310 after receiving the issuing command that client sends, obtains the source code of software package to be released in order to server.The source code of software package to be released can be stored in the local device of developer or be stored in the Source code management server (server as TFS pattern) of a centralized management, and is not limited thereto.(website) website that developer or tester or other related personnel can be provided by client or foreground, selects software package to be sent and corresponding site environment, correlation parameter etc., to perform issuing command.Server, after the issue request receiving developer or tester or other related personnel, can call according to information such as the title of software package, versions and obtain the source code of corresponding software bag.
Described compilation of source code unit 320 is compiled described source code by built-in compiler in order to server.Described built-in compiler can be multilingual compiler such as such as C, PHP, Python, Java etc.Described compiler can the compiler commonly used by those skilled in the art, will not enumerate at this.
Source code after compiling, is packed, to generate the software package corresponding with site environment according to built-in multiple site environment rules in order to server by described packaged unit 330.
Described software package Dispatching Unit 340 is distributed according to the software package of destination address by generation in order to server.According to destination address (address according to previous destination server set in collocation point), the software package of generation is distributed in corresponding environment.
In an embodiment of the present invention, comprise further at described source code acquiring unit 310: collocation point provides module 311 and target requirement list to provide module 312, as shown in Figure 4, wherein, described collocation point provides module 311 to provide a collocation point in order to server, to determine destination server corresponding in site environment.Can determine the site environment (such as development environment, test environment, production environment etc.) corresponding to code packages to be sent by described collocation point, each site environment corresponds to corresponding destination server (comprising the quantity etc. of destination server).Described target requirement list provides module 312 to provide a target requirement list in order to server, to select the code packages corresponding with target requirement, and then determines the site environment corresponding with target requirement.That is, when selecting code packages (i.e. the program) corresponding with target requirement, can determine that this software package will be sent to corresponding site environment (such as test environment, production environment).
Further, shown in Figure 5, described packaged unit 330 can comprise: template base calling module 331, profile data are searched module 333, configuration file generation module 335 and configuration file and added module 337.
Wherein, described template base calling module 331 is in order to call the template base of all site environments configuration.The template base of all site environments configuration (such as test environment, production environment etc.) can be stored among a file, and this file is similar to text.
Described profile data searches module 333 in order to by the multi-environment configuration file Core Generator code packages that also basis is corresponding with target requirement, in the template base that all site environments configure, search the profile data corresponding to site environment.When developer or tester or other related personnel are when selecting software package to be released, just automatically confirm corresponding environment (such as development environment, test environment, production environment), and each site environment all has the profile data of its correspondence, therefore, utilize the environmental labels being stored in the reference position of above-mentioned file, and search the profile data corresponding with site environment in the template base configured at all site environments by multi-environment configuration file Core Generator (configtools), wherein this environmental labels has uniqueness, and in order to distinguish different environment (such as development environments, test environment, production environment).
Extracted profile data, in order to after successfully extracting corresponding profile data in the template base that configures at all site environments, is incorporated to profile template, to generate corresponding configuration file by described configuration file generation module 335.That is, successfully extract corresponding profile data (it is xml file) in the template base that all site environments configure after, extracted profile data is incorporated to profile template (it is tpl file), to generate corresponding configuration file (it is for cfg file).Above-mentioned tpl file is in order to configuration node, xml file is in order to produce corresponding profile data according to varying environment, be equivalent to data source, in order to provide the occurrence that each environment is corresponding, such as usemame/password etc. (usemame/password in each environment is different).
Described configuration file adds module 337, in order to be added among the source code after compiling by generated configuration file, to perform follow-up packing operation.Based on the code packages (such as once generating the code packages of all environment) that above-mentioned compile source code generates, and configuration file is placed in respectively in corresponding code packages, to generate corresponding software package.In the present embodiment, the code packages of 4 kinds of varying environments (such as development environment, test environment, production environment) can once be generated.
To sum up, can realize setting up repetition, issuing flow process reliably by described software package automated pubilication system, to improve the issue quality of software package, and then avoid human error, and can by whole issue process automation, promote the efficiency for issuing of whole software package, and then minimizing related personnel loses time among the duplication of labour having no technology content.
Optionally, in one embodiment of the present invention, described software package Dispatching Unit 340 comprises further: publishing policy configuration module 341 and the power of examination and approval provide module 342, as shown in Figure 6.
Wherein, the publishing policy automatically issued in order to configuration software bag of described publishing policy configuration module 341.An issue list can be generated by described publishing policy configuration module 341, in described issue is single, the information such as the code name of software package, version number, imprint, deployment handbook and storage address can be defined.Like this, multiple developer can participate in same project according to the information of described issue list, to increase the transparency of software development, and then avoids the other staff in team cannot learn whole publishing process in time.
The described power of examination and approval provides module 342 in order to provide the corresponding power of examination and approval according to publishing policy.Like this, there is approving person's (such as develop, test, PMO, operation maintenance personnel) of the corresponding power of examination and approval after the request of different brackets receiving related application personnel, the software package that request is issued is carried out examination & approval process and explained, examination & approval are by rear, and server sends required software package or the position specified by document to application personnel automatically.In it is possible to the function such as version application, application approval, software package issue realizing software package, thus the configuration substituting artificial version issue controls, and improves the efficiency for issuing of software package, reduces the duplication of labour, reduce cost of labor.
Optionally, in another embodiment of the present invention, described software package Dispatching Unit 340 comprises further: publishing policy configuration module 341 and many software packages release module 343, as shown in Figure 7.Wherein, the publishing policy that described publishing policy configuration module 341 is issued automatically in order to configuration software bag, to set the order between multiple software package.Described many software packages release module 343, in order to according to the order between set multiple software packages, performs the disposable operation of simultaneously issuing of multiple software package.
Specifically, because some mega projects need to issue multiple software package simultaneously, and between multiple software package, there is certain dependence, therefore, need the publishing policy automatically issued by configuration software bag, to set the sequencing between multiple software package, be equivalent to formation one task chain.After having set the sequencing between multiple software package, the disposable operation of simultaneously issuing of multiple software package can be performed.
Optionally, in another embodiment of the present invention, described software package Dispatching Unit 340 comprises further: publishing policy configuration module 341, software package content search module 344 and rollback operation execution module 345, as shown in Figure 8.Wherein, the publishing policy that described publishing policy configuration module 341 is issued automatically in order to configuration software bag, with the version information of setting software bag.Described software package content search module 344, in order to when finding that Current software bag content has mistake, according to the version information of software package set in publishing policy, finds the software package content corresponding to a front version of Current software bag.Described rollback operation execution module 345 in order to perform rollback operation, so that the software package content corresponding to a front version is replaced Current software bag content.Like this, there is mistake in discovery Current software bag content and causes project operation to go wrong, or the version of releasing software bag wrong time, according to the version information stored, the software package version issued of success before searching, and carries out again the issue of software package, avoids after mistake appears in the software package because of current issue, in time the software package that success is issued cannot be distributed to server, and then affect the use of user.To sum up, adopt the automatic issue that above-mentioned module can not only realize software package, to save manpower and time, reduce and issue error rate, make user can to use after renewal sophisticated software bag more as early as possible, and avoid because issuing unsuccessful and causing affecting the use of user.
Optionally, in another embodiment of the present invention, described software package Dispatching Unit 340 comprises further: server configuration monitoring module 346.Specifically, described server configuration monitoring module 346 in order to provide a server administration interface, with the configuration (such as set up website, or change the path of file) to server to monitor.Like this, can not only ensure safety, avoid the authority affecting whole server because of amendment file, and when without the need to logining server, by server configuration monitoring module, relevant configuration is carried out to server, reduce rate of making a mistake simultaneously.
Optionally, in another embodiment of the present invention, described packaged unit 330 comprises further: pseudo-data message adds module 332, pseudo-data message matching module 334 and sensitive data information replacement module 336, as shown in Figure 9.
Wherein, described pseudo-data message adds module 332 in order to based on generated configuration file, adds the source code after pseudo-data message to compiling, to perform follow-up packing operation.Described pseudo-data message matching module 334, in order to when being packed into the corresponding software package of a setting site environment, mates described pseudo-data message in configuration file.Described sensitive data information replacement module 336, in order to when matching described pseudo-data message, extracting the sensitive data information corresponding to pseudo-data message, and described pseudo-data message is replaced with described sensitive data information in sensitive information management database.
Specifically, due to (such as test environment in each environment, production environment etc.) usemame/password be different, and the secrecy of each environment is also different, the more important thing is, in order to avoid the usemame/password in a specific environment (such as development environment) in other environments (such as production environment) be disclosed, therefore, module 332 is added with when based on generated configuration file by described pseudo-data message, add the source code after pseudo-data message to compiling, wherein said pseudo-data message can be character or character string etc. (such as " ABCD "), and not there is any meaning.By described pseudo-data message matching module 334 with when being packed into the corresponding software package of a setting site environment (such as production environment), pseudo-data message as described in coupling in configuration file (as cfg file).By sensitive data information replacement module 336 with when matching described pseudo-data message, extract in sensitive information management database and pseudo-data message (such as " ABCD ") sensitive data information (such as " ABCD " corresponding usemame/password) accordingly, and described pseudo-data message is replaced with described sensitive data information.
Obviously, those skilled in the art should be understood that, each module of the invention described above embodiment or each step can realize with general computer installation, they can concentrate on single computer installation, or be distributed on network that multiple computer installation is combined into, alternatively, they can realize with the executable software package source code of computer installation, thus, they can be stored and be performed by computer installation in the storage device, and in some cases, step shown or described by can performing with the order be different from herein, or they are made each integrated circuit modules respectively, or the multiple module in them or step are made into single integrated circuit module to realize.Like this, embodiment of the present invention is not limited to any specific hardware and software combination.
The above is only the preferred embodiment of the present invention; it should be pointed out that for those skilled in the art, under the premise without departing from the principles of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (16)

1. a software package method for automatically releasing, is characterized in that, comprising:
(1) server is after receiving the issuing command that client sends, and obtains the source code of software package to be released;
(2) server is compiled described source code by built-in compiler;
(3) server is according to built-in multiple site environment rules, packs, the source code after compiling to generate the software package corresponding with site environment;
(4) server is distributed according to the software package of destination address by generation.
2. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (1):
(11) server provides a collocation point, to determine destination server corresponding in site environment;
(12) server provides a target requirement list, to select the code packages corresponding with target requirement, and then determines the site environment corresponding with target requirement.
3. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (3):
(31) template base of all site environment configurations of server calls;
(32) server is by a multi-environment configuration file Core Generator also according to the code packages corresponding with target requirement, in the template base that all site environments configure, search the profile data corresponding with site environment;
(33), successfully extract corresponding profile data in the template base that all site environments configure after, extracted profile data is incorporated to profile template, to generate corresponding configuration file;
(34) generated configuration file is added among the source code after compiling, to perform follow-up packing operation.
4. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (4):
(41) publishing policy automatically issued of configuration software bag;
(42) the corresponding power of examination and approval is provided according to publishing policy.
5. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (4):
(51) publishing policy automatically issued of configuration software bag, to set the order between multiple software package;
(52) according to the order between set multiple software packages, the disposable operation of simultaneously issuing of multiple software package is performed.
6. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (4):
(61) publishing policy automatically issued of configuration software bag, with the version information of setting software bag;
(62) when finding that Current software bag content has mistake, according to the version information of software package set in publishing policy, the software package content corresponding to a front version of Current software bag is found;
(63) rollback operation is performed, so that the software package content corresponding to a front version is replaced Current software bag content.
7. according to the software package method for automatically releasing described in claim 1, it is characterized in that, comprise further in step (4):
(71) server administration interface is provided, to monitor the configuration of server.
8. according to the software package method for automatically releasing described in claim 3, it is characterized in that, in step (3), comprise further:
(81) based on generated configuration file, the source code after pseudo-data message to compiling is added, to perform follow-up packing operation;
(82) when being packed into the corresponding software package of a setting site environment, in configuration file, described pseudo-data message is mated;
(83) if match described pseudo-data message, then in sensitive information management database, extract the sensitive data information corresponding with pseudo-data message, and described pseudo-data message is replaced with described sensitive data information.
9. a software package automated pubilication system, is characterized in that, comprising:
Source code acquiring unit, in order to server after receiving the issuing command that client sends, obtains the source code of software package to be released;
Compilation of source code unit, is compiled described source code by built-in compiler in order to server;
Packaged unit, in order to server according to built-in multiple site environment rules, packs the source code after compiling, to generate the software package corresponding with site environment;
Software package Dispatching Unit, distributes according to the software package of destination address by generation in order to server.
10. software package automated pubilication system according to claim 9, is characterized in that, in described source code acquiring unit, comprises further:
Collocation point provides module, provides a collocation point in order to server, to determine destination server corresponding in site environment;
Target requirement list provides module, provides a target requirement list in order to server, to select the code packages corresponding with target requirement, and then determines the site environment corresponding with target requirement.
11. software package automated pubilication systems according to claim 9, it is characterized in that, described packaged unit comprises further:
Template base calling module, in order to the template base of all site environment configurations of server calls;
Profile data searches module, in order to server by the multi-environment configuration file Core Generator code packages that also basis is corresponding with target requirement, in the template base that all site environments configure, searches the profile data corresponding with site environment;
Configuration file generation module, after successfully extracting corresponding profile data in the template base that configures at all site environments, is incorporated to profile template by extracted profile data, to generate corresponding configuration file;
Configuration file adds module, in order to be added among the source code after compiling by generated configuration file, to perform follow-up packing operation.
12. software package automated pubilication systems according to claim 9, is characterized in that, described software package Dispatching Unit comprises further:
Publishing policy configuration module, the publishing policy automatically issued in order to configuration software bag;
The power of examination and approval provides module, in order to provide the corresponding power of examination and approval according to publishing policy.
13. software package automated pubilication systems according to claim 9, is characterized in that, described software package Dispatching Unit comprises further:
Publishing policy configuration module, the publishing policy automatically issued in order to configuration software bag, to set the order between multiple software package; Many software packages release module, in order to according to the order between set multiple software packages, performs the disposable operation of simultaneously issuing of multiple software package.
14. software package automated pubilication systems according to claim 9, is characterized in that, described software package Dispatching Unit comprises further:
Publishing policy configuration module, the publishing policy automatically issued in order to configuration software bag, with the version information of setting software bag;
Software package content search module, in order to when finding that Current software bag content has mistake, according to the version information of software package set in publishing policy, finds the software package content corresponding to a front version of Current software bag;
Rollback operation execution module, in order to perform rollback operation, to replace Current software bag content by the software package content corresponding to a front version.
15. software package automated pubilication systems according to claim 9, is characterized in that, described software package Dispatching Unit comprises further:
Server configuration monitoring module, in order to provide a server administration interface, to monitor the configuration of server.
16. software package automated pubilication systems according to claim 11, it is characterized in that, described packaged unit comprises further: pseudo-data message adds module, in order to based on generated configuration file, add the source code after pseudo-data message to compiling, to perform follow-up packing operation;
Pseudo-data message matching module, in order to when being packed into the corresponding software package of a setting site environment, mates described pseudo-data message in configuration file;
Sensitive data information replacement module, if in order to match described pseudo-data message, then extracts the sensitive data information corresponding with pseudo-data message, and described pseudo-data message is replaced with described sensitive data information in sensitive information management database.
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 true CN105373401A (en) 2016-03-02
CN105373401B 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)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912375A (en) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 Method and device for deploying application programs to servers
CN106325881A (en) * 2016-08-30 2017-01-11 泰康保险集团股份有限公司 Method and device for automatic generation of distribution package
CN106445488A (en) * 2016-07-01 2017-02-22 厦门易名科技股份有限公司 Code release and backspacing methods
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
CN107122182A (en) * 2017-04-14 2017-09-01 努比亚技术有限公司 A kind of code construction and the method and system of issue
CN107145377A (en) * 2017-03-17 2017-09-08 广州视源电子科技股份有限公司 Software compilation method and system
CN107291437A (en) * 2016-04-13 2017-10-24 上海思立微电子科技有限公司 Issue bag version information production method, device and terminal
CN107291494A (en) * 2017-05-27 2017-10-24 北京五八信息技术有限公司 The generation method and device of application program installation kit
CN107315596A (en) * 2017-07-26 2017-11-03 郑州云海信息技术有限公司 A kind of code is packed dispositions method and device automatically
CN107341150A (en) * 2016-04-28 2017-11-10 泰康保险集团股份有限公司 Automate dissemination method and device
CN107491390A (en) * 2017-08-15 2017-12-19 深圳市慧择时代科技有限公司 The method and device of replacement test environment configuration information
CN107656742A (en) * 2017-09-27 2018-02-02 北京奇虎科技有限公司 A kind of software product dissemination method and device
CN107678969A (en) * 2017-10-18 2018-02-09 广东神马搜索科技有限公司 Beta version dissemination method, device, Version Control equipment and test machine
CN107729046A (en) * 2017-10-17 2018-02-23 福建富士通信息软件有限公司 A kind of software version automation dissemination method and device
CN109656984A (en) * 2018-12-21 2019-04-19 树根互联技术有限公司 Data rule management system, method and apparatus
WO2020052092A1 (en) * 2018-09-10 2020-03-19 深圳市泰洲科技有限公司 Method and apparatus for automatically releasing code, computer device, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020066073A1 (en) * 2000-07-12 2002-05-30 Heinz Lienhard Method and system for implementing process-based Web applications
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020066073A1 (en) * 2000-07-12 2002-05-30 Heinz Lienhard Method and system for implementing process-based Web applications
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/》 *

Cited By (20)

* 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
CN107341150A (en) * 2016-04-28 2017-11-10 泰康保险集团股份有限公司 Automate dissemination method and device
CN105912375A (en) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 Method and device for deploying application programs to servers
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
CN107122182A (en) * 2017-04-14 2017-09-01 努比亚技术有限公司 A kind of code construction and the method and system of issue
CN107291494A (en) * 2017-05-27 2017-10-24 北京五八信息技术有限公司 The generation method and device of application program installation kit
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
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
CN107678969A (en) * 2017-10-18 2018-02-09 广东神马搜索科技有限公司 Beta version dissemination method, device, Version Control equipment and test machine
CN107678969B (en) * 2017-10-18 2021-04-02 阿里巴巴(中国)有限公司 Test version release method and device, version control equipment and test machine
WO2020052092A1 (en) * 2018-09-10 2020-03-19 深圳市泰洲科技有限公司 Method and apparatus for automatically releasing code, computer device, and storage medium
CN109656984A (en) * 2018-12-21 2019-04-19 树根互联技术有限公司 Data rule management system, method and apparatus

Also Published As

Publication number Publication date
CN105373401B (en) 2018-09-07

Similar Documents

Publication Publication Date Title
CN102693183B (en) Method and system for realizing automatic software testing
Apel et al. An overview of feature-oriented software development.
CN105302716B (en) Test method, device under the development mode of interflow
TWI464611B (en) On-demand database service system, method, and computer program product for verifying that a developed application will operate properly with at least one other application
TWI271617B (en) Automatically identifying a program error in a computer program
KR101314949B1 (en) Integration environment generator
CN101119517B (en) Method of automatic downloading software from network server
Pavón et al. Model driven development of multi-agent systems
CN102164045B (en) Parameterized computer monitor system and method
CN108139745A (en) The automatic loop test of process control loop
CN104133685B (en) The method and system of Website front-end exploitation
EP2482192B1 (en) Testing lifecycle
Wagner Model-Driven Software Migration
Langer et al. A posteriori operation detection in evolving software models
US10572249B2 (en) Software kit release management
CN103942065B (en) For updating the method and system of firmware compatibility data
CN104407973B (en) A kind of implementation method and device of automation cell test
US20070130504A1 (en) Reusable XPath validation expressions
US9372784B2 (en) Test system configuration method and system
CN103999047B (en) repair delivery system
AU2015218520B2 (en) Service extraction and application composition
US9075596B2 (en) Deployment
CN102681865A (en) Coordinated upgrades in distributed systems
CN106170764A (en) Method and apparatus for automatic equipment Program Generating
Tufano et al. An empirical investigation into learning bug-fixing patches in the wild via neural machine translation

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