CN106897223A - A kind of software kit delivery method and device based on continuous integrating - Google Patents

A kind of software kit delivery method and device based on continuous integrating Download PDF

Info

Publication number
CN106897223A
CN106897223A CN201710103920.XA CN201710103920A CN106897223A CN 106897223 A CN106897223 A CN 106897223A CN 201710103920 A CN201710103920 A CN 201710103920A CN 106897223 A CN106897223 A CN 106897223A
Authority
CN
China
Prior art keywords
code
software
iso
bags
software kit
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.)
Pending
Application number
CN201710103920.XA
Other languages
Chinese (zh)
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710103920.XA priority Critical patent/CN106897223A/en
Publication of CN106897223A publication Critical patent/CN106897223A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The embodiment of the invention discloses a kind of software kit delivery method based on continuous integrating, the successful code of examination that developer submits to is sent to code library in real time, when detection is when meeting pre-conditioned, code different in code library is combined structure software kit, integration testing is carried out to the software kit, and the software kit of structure is sent to software library;Then several software kits by integration testing in software library are configured to ISO bags, the ISO bags are installed by PXE, system testing is carried out to it, will finally be paid by the ISO bags of system testing.The continuous integrating of full-automation is realized, the R&D cycle is effectively shortened, the efficiency of software kit payment is improve, substantial amounts of manpower, financial resources and material resources is saved, with good socio-economic efficiency.Additionally, the embodiment of the present invention is additionally provided realizes device accordingly, further such that methods described has more practicality, described device has corresponding advantage.

Description

A kind of software kit delivery method and device based on continuous integrating
Technical field
The present embodiments relate to technical field of software development, more particularly to a kind of software kit based on continuous integrating is handed over Pay method and device.
Background technology
With developing rapidly for computer technology, software development technique has also obtained corresponding development.Software development is root According to user require build software systems or system in software section process, including demand seizure, demand analysis, design, Realize and test, generally realized by certain programming language (such as C language, JAVA language).Software development process can Function and the design of algorithm, the general structure design of software and module, programming and debugging, the program joint debugging realized for design software With test and write, submission program.
Whole software development was typically divided into multiple modules, each module by existing software according to demand before research and development After the completion of research and development, modules are attached by interface, so that each intermodule is communicated.This development mode reality as early as possible The lower coupling of each intermodule is showed, but in this mode, only can be so integrated into after all of code all develops completion Bug convergences are tested and carried out together.
With the development of software engineering, the expansion of software size, the complication of framework and technology path, this waterfall type The drawbacks of development scheme, is more and more obvious, and the bug of such as early stage can just be found when often arriving last integrated, so as to cause Repairing bug becomes complicated or even involves bottom architecture adjustment, and the research and development of whole software can be caused to fail when serious, re-starts Research and development, and then cause the whole research and development of software cycle to increase, waste substantial amounts of manpower and financial resources.Therefore, how effectively to contract The R&D cycle of short software, software kit delivery efficiency is improved, be those skilled in the art's problem demanding prompt solution.
The content of the invention
The purpose of the embodiment of the present invention is to provide a kind of software kit delivery method and device based on continuous integrating, effectively The research and development of software cycle is shortened, the delivery efficiency of software kit is improve.
In order to solve the above technical problems, the embodiment of the present invention provides following technical scheme:
On the one hand the embodiment of the present invention provides a kind of software kit delivery method based on continuous integrating, including:
Obtained from code inspection platform and examine successful code, and send it to code library;
When meeting pre-conditioned, the software kit of different code construction preset formats is chosen in the code library, will The software kit is sent to project software storehouse, and in the test environment that user builds, and integration testing is carried out to the software kit;
Chosen in the project software storehouse and ISO bags are built by the software kit of integration testing, by PXE server by institute ISO bags are stated in physical machine, the instruction of testing results script is sent to the physical machine, with to the ISO bags system Unified test is tried;
The user will be paid by the ISO bags of system testing.
Optionally, described selection in the project software storehouse is included by the software kit structure ISO bags of integration testing:
Detect the number of loads of continuous integration system;
When the number of loads no more than predetermined threshold value of the continuous integration system is detected, in the project software storehouse Choose and ISO bags are built by the software kit of integration testing.
Optionally, described selection in the project software storehouse is included by the software kit structure ISO bags of integration testing:
Chosen from the project software storehouse by the software kit of integration testing in Preset Time, build ISO bags.
Optionally, state and pre-conditioned be:
Detect code to enter the code library or current time is Preset Time.
Optionally, the described ISO bags being arranged in physical machine by PXE server is included:
It is the fileinfo of PXE server configuration to obtain the user;
DHCP, TFTP and Kickstart are configured according to the fileinfo, and respective configuration file is sent out In delivering to corresponding server;
By the tftp server be downloaded in the physical machine ISO bags by the PXE server;
The ISO bags are attached to the physical machine using the Kickstart servers.
Optionally, the code library that sends it to includes:
Judge whether current code is identical with the code in the code library;
When the code in judging the current code and the code library is differed, the code was sent to the generation Code storehouse.
Optionally, described acquisition from code inspection platform examines successful code, and sends it to code library and include:
Obtain the code that user is uploaded to the code inspection platform;
When receive the user code is checked by instruction after, code format inspection is carried out to the code Look into, compile inspection and in the test environment that the user builds, unit testing is carried out to institute's code;
To be checked by code format inspection, compiling and the code of unit testing is sent to code library.
On the other hand the embodiment of the present invention provides a kind of software kit delivery installation based on continuous integrating, including:
Code enters library module, examines successful code for being obtained from code inspection platform, and send it to code library;
Integration testing module, for when meeting pre-conditioned, different code constructions being chosen in the code library pre- If the software kit of form, the software kit is sent to project software storehouse, and in the test environment that user builds, to described soft Part bag carries out integration testing;
System test modules, ISO bags are built for being chosen in the project software storehouse by the software kit of integration testing, The ISO bags are arranged in physical machine by PXE server, the instruction of testing results script is sent to the physical machine, with System testing is carried out to the ISO bags;
Delivery module, for the user will to be paid by the ISO bags of system testing.
Optionally, the system test modules include:
Monitoring unit, the number of loads for detecting continuous integration system;
Construction unit, for when the number of loads no more than predetermined threshold value of the continuous integration system is detected, in institute Selection builds ISO bags by the software kit of integration testing in stating project software storehouse.
Optionally, the code enters library module and also includes:
Judging unit, for judging whether current code is identical with the code in the code library;It is described current when judging When code in code and the code library is differed, the code is sent to the code library.
A kind of software kit delivery method based on continuous integrating is the embodiment of the invention provides, in real time developer is submitted to The successful code of examination send to code library, when detection when meeting pre-conditioned, code different in code library is carried out Combination builds software kit, integration testing is carried out to the software kit, and the software kit of structure is sent to software library;Then by software Several software kits by integration testing in storehouse are configured to ISO bags, and the ISO bags are installed by PXE, and it is carried out System testing, will finally be paid by the ISO bags of system testing.
In technical scheme, system testing is carried out to installation again from unit testing to integration testing, realized complete The continuous integrating of automation, not only increases the quality of code and the accuracy of service logic, effectively shortens the R&D cycle, The efficiency of software kit payment is improve, so as to improve the efficiency of software development;And be effectively reduced manpower, financial resources and The input of material resources, with good socio-economic efficiency.
Additionally, the embodiment of the present invention provides corresponding realization dress also directed to the software kit delivery method based on continuous integrating Put, further such that methods described has more practicality, described device has corresponding advantage.
Brief description of the drawings
For the clearer explanation embodiment of the present invention or the technical scheme of prior art, below will be to embodiment or existing The accompanying drawing to be used needed for technology description is briefly described, it should be apparent that, drawings in the following description are only this hair Some bright embodiments, for those of ordinary skill in the art, on the premise of not paying creative work, can be with root Other accompanying drawings are obtained according to these accompanying drawings.
Fig. 1 is a kind of schematic flow sheet of software kit delivery method based on continuous integrating provided in an embodiment of the present invention;
Fig. 2 is PXE provided in an embodiment of the present invention installation schematic flow sheets;
Fig. 3 is PXE architectural configurations schematic diagram provided in an embodiment of the present invention;
Fig. 4 is that the flow of another software kit delivery method based on continuous integrating provided in an embodiment of the present invention is illustrated Figure;
Fig. 5 is continuous integrating hardware architecture diagram provided in an embodiment of the present invention;
Fig. 6 is a kind of implementation method structure of the software kit delivery installation based on continuous integrating provided in an embodiment of the present invention Figure.
Specific embodiment
In order that those skilled in the art more fully understand the present invention program, with reference to the accompanying drawings and detailed description The present invention is described in further detail.Obviously, described embodiment is only a part of embodiment of the invention, rather than Whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art are not making creative work premise Lower obtained every other embodiment, belongs to the scope of protection of the invention.
Term " first ", " second ", " the 3rd " " in the description and claims of this application and above-mentioned accompanying drawing Four " it is etc. for distinguishing different objects, rather than for describing specific order.In addition term " comprising " and " having " and Their any deformations, it is intended that covering is non-exclusive to be included.For example contain the process of series of steps or unit, method, System, product or equipment are not limited to the step of having listed or unit, but may include the step of not listing or unit.
Existing software development model, only after the completion of the research and development of each module, after being entered row set, just carries out correlative measurement Examination.Will certainly so cause the simple bug of some initial to it is last it is integrated after repaired, when it involves whole software Framework when, it is repaired just relatively it is difficult, it is serious, result even in whole research and development of software and start anew.
Present inventor passes through research and finds, continuous integrating development mode (Continuous Integration, CI research and development of software team) can be allowed to be received on the basis of continuing feed back and be improved, it is not necessary to wait until that later stage construction cycle just seeks Look for and repair defect.More popular theory, refer to just for developer code each time submit to, all automatically All code Check out to empty lists in Repository, and all Test Case of automatic running.If success Then receive current submission, otherwise tell member in team, this is a Revision for failure.This pattern can find as soon as possible Bug simultaneously carries out Complicated primary, greatly reduces integrated problem, reduces R&D risk, reduces and repeats.
In consideration of it, the application carried out by the compiling from code and unit testing, to code-group synthesis module integration testing, Arrive each module composition ISO again carries out system testing by the installation of PXE technologies, realizes the continuous integrating of full-automation.From difference Test aspect ensure that the quality of code and the correctness of service logic, be conducive to shorten the R&D cycle.
After the technical scheme for describing the embodiment of the present invention, the various non-limiting reality of detailed description below the application Apply mode.
Referring firstly to Fig. 1, Fig. 1 is a kind of software kit delivery method based on continuous integrating provided in an embodiment of the present invention Schematic flow sheet, the embodiment of the present invention may include herein below:
S101:Obtained from code inspection platform and examine successful code, and send it to code library.
The source file that code writes out on behalf of the language that research staff's developing instrument is supported is one group by character, symbol Number or signal element the clear and definite rule system of information is represented with discrete form.The principle of Code Design include only certainty, Standardization and versatility, expandability and stability, it is easy to identification and remembers, makes every effort to short and small and with uniform format and be easily modified Deng.One section of code can often realize One function, for example, can compile one section by C language and realize the code that data are sued for peace, After the number that each is sued for peace is input into, the code is run, you can export the result of the sum of these numbers.
Code inspection platform is automatic test platform, and research staff will compile the one section of code for completing and be uploaded to code and examine Platform is looked into, code inspection platform can carry out the inspection such as grammer, form to this section of code.
In a kind of specific embodiment, S101 may include:
S1011:Obtain the code that user is uploaded to the code inspection platform;
S1012:When receive the user code is checked by instruction after, line code lattice are entered to the code Formula inspection, compiling check and in the test environment that the user builds, unit testing is carried out to institute's code;
S1013:To be checked by code format inspection, compiling and the code of unit testing is sent to code library.
Check that examination is sentenced according to specific rule because code inspection platform carries out code format inspection, compiling It is disconnected, but language is flexible comparing after all, when machine is judged as mistake, it may be possible to correct;Or some new mistakes Mistake does not enter the inspection rule of platform also, and these mistakes cannot be excluded.In consideration of it, also provide manually be reviewed, both Ensure the quality of code, by mistake wrong and before repetition submission checking process can be avoided again, be unfavorable for improving the R&D cycle.
In computer programming, unit testing carries out correctness inspection for program module (least unit of Software for Design) The test job tested.Program unit is the minimum testable unit of application.It is general next for the implication of unit in unit testing Say, to be gone to judge its concrete meaning according to actual conditions, unit refers to a function such as in C language, and unit refers to a class in Java, A window or menu etc. can be referred in patterned software.Code is exactly often to perform a function for minimum, to generation Code carries out test and is regarded as carrying out unit testing.
S102:When meeting pre-conditioned, the software of different code construction preset formats is chosen in the code library Bag, the software kit is sent to project software storehouse, and in the test environment that user builds, and the software kit is carried out integrated Test.
Can be when meeting pre-conditioned:
Detect code to enter the code library or current time is Preset Time.Detect code storage or timing is entered Row builds software kit, such as daily 8:00、10:00、12:00、15:00、17:00、18:00 and 22:00.
Integration testing is carried out for clocked flip, access time section can be carried out according to specific time situation, in research and development people Member the working time when, the interval time of triggering is shorter, and in rest can interval time it is more long, the application does not make any limit to this It is fixed.
The software kit of preset format can be RPM forms software kit, or other any forms bag, according to specific Software actual conditions are generated.Build software kit will multiple codes be combined into module, make the code-group of simple function The compound, module of practicality is realized in synthesis.For example log-in interface, for a certain website is, it is necessary to export user name, close Code, by can just be logged in after checking.For realizing that the entitled one group of code of input user, presentation log-in interface are one group of code, test It is one group of code to demonstrate,prove, and is combined the function of being just capable of achieving to log in.
The software kit of structure is sent to project software storehouse, such as yun sources.
For example, S102 can be:
S1021:When code storage is detected, triggered based on Pipeline Task Scheduling Mechanisms and packed, be output as RPM lattice The bag of formula;
Pipeline be in NET Framework Add-In programming models, represent Add-In and its host it The linear communication model of the line sections of swapping data.
S1022:RPM software kits are sent to software project software library, and updates concordance list;
S1023:The software kit is updated in testing service device, and carries out integration testing, so as to realize continuing automatically collecting Into test.
Wherein, RPM version numbers are ordered by " git describe " and obtained, the .rpm files passes of output to project software " development library " (i.e. the project software storehouse) in source;Interim achievement issues new version, by by tag upload to source code library this Event is triggered, and RPM version numbers are tag, " the stabilization storehouse " of the .rpm files passes of output to project software source.According to different surveys Examination demand, is remotely connected to the main frame to be disposed, and each module software bag is updated by running yum orders.Final triggering jenkins Integration testing task, is tested for deployment test environment.
S103:Chosen in the project software storehouse and ISO bags are built by the software kit of integration testing, serviced by PXE Be arranged on the ISO bags in physical machine by device, the instruction of testing results script is sent to the physical machine, with to the ISO bags Carry out system testing.
ISO bags are the software kit that can be run in physical machine, such as APP.ISO bags are being built, can be regularly (such as every It 18:00 or 22:00) it is or random, or monitor current CI system loads it is smaller when, will pass through in project software storehouse Such as the bag of integration testing is combined, and in addition certain operations system, the component needed for linux, and operation is built ISO bags.
Integration testing is carried out for clocked flip, access time section can be carried out according to specific time situation, in research and development people Member the working time when, the interval time of triggering is more long, and in rest can interval time it is shorter, the application does not make any limit to this It is fixed.
PXE (preboot execute environment, Pre-boot Execution Environment) is used for without disk, has the net of disk networking Network agreement.Deposit in the BIOS or ROM on mainboard or network interface card.Work in C/S (Client/Server, client/server) Network mode, support work station by network from far-end server download image, and thus support by network startup operate System, in start-up course, demanding terminal server-assignment IP address, then with TFTP (trivial file transfer Protocol, TFTP) or MTFTP (multicast trivial file transfer protocol) associations View downloads one and starts software kit to execution in local memory, and completing terminal basic software by this startup software kit is set, from And guide the terminal operating system being pre-installed in server.PXE can guide several operation systems.
TFTP is one in TCP/IP protocol suite and is used for carrying out simple files transmission between clients and a server Agreement, there is provided the little file transfer services of uncomplicated, expense.Due to MTFTP for the TFTP of multiple spot is serviced, and in this application From network download startup software kit to local memory, therefore TFTP need to only be can select and transmitted for file.
Therefore when by ISO bags Remote Installation to physical machine, can be by PXE technologies and BMC (baseboard Management controller, baseboard management controller, a kind of server for remote management device) technology realizes.Wherein, PXE Installation implements process and see Fig. 2, specifically, may include:
It is the fileinfo of PXE server configuration to obtain the user;
Staff is according to actual installation situation modification configuration parameter.All of installation configuration is stored in a total configuration In file (such as ENV configuration files), including TFTP and be mounted with mirror image HTTP service address, the MAC of each destination host, The information such as host name, IP, gateway, system password after installation.
DHCP, TFTP and Kickstart are configured according to fileinfo, and by respective configuration file send to In corresponding server;
In order to avoid being impacted to non-targeted physical machine, DHCP is only in response to the physical machine arranged in its configuration file MAC Address, it is therefore desirable to according to the information in ENV configuration files, generate the host list for HDCP responses, and be included in In dhcpd.conf files.
Because test environment can install different mirror images or component, therefore multiple installation startup items are had, be so accomplished by It is that each physical machine generates a exclusive boot configuration file in tftp according to ENV configuration files, file name can be “01-<With-separate mac>”.After physical machine searches Dynamic Host Configuration Protocol server, can be to reading one's own configuration text in tftp Part, and carry out follow-up installation according to the boot entry configured in the configuration file.Retain all the time in tftp one it is entitled The guiding file of default, acquiescence informs physical machine by hard disk startup, if goal systems can not find to one's name exclusive matching somebody with somebody File is put, by according to the guiding in the default files of acquiescence from hard disk startup.The boot configuration will indicate follow-up installation Kickstart policy papers.
Because test environment can install different mirror images or component, therefore installation process is different, is so accomplished by according to ENV Configuration file is that different types of physical machine generates different kickstart installation policy papers, and these files are also put in HTTP In server.
After configuration is complete, the related services such as DHCP, HTTP, TFTP are started.
By tftp server be downloaded in physical machine ISO bags by PXE server;
The ISO bags are attached to physical machine using Kickstart servers.
Physical machine can be started by SSH modes, if physical machine is unreachable, the master of the physical machine be restarted by IPMI interfaces Machine.
Can be used ping orders poll to detect whether the IP of each physical target main frame can lead to, if logical, illustrate the main frame Installation process and network interface card is configured through entering, can now delete the guiding file for belonging to the main frame in TFTP, then main frame dress The default that machine can enter in TFTP after completing to restart is guided by hard disk startup;If obstructed, several seconds times of sleep continue inspection Survey, until beyond maximum duration, then illustrating that the main frame does not normally enter installation state, it is necessary to be checked.
Each target physical main frame can open SSH services after installation completion is restarted, therefore can detect ssh by poll Complete and restart to judge whether to have installed to whether associated host can lead to.
After detecting destination host and having completed to install and restarted, the correlation formulated in ENV configuration files is performed Environmental preparation is operated, such as the configuration of network, service for customizing etc. or the execution of preset script etc., to carry out follow-up being Unified test is tried.When carrying out system testing to ISO bags, the test script that can be write according to staff is carried out, for example can be according to SDK pin Originally system testing is carried out.
A whole set of environment is set up among multiple network segments, and each network segment network can lead to.Due to DHCP protocol cannot cross-network segment response, Therefore realized in each network segment deployment Dynamic Host Configuration Protocol server or by way of DHCP proxy.Each target physical main frame is during installation May be coupled to TFTP and HTTP server obtains configuration information or mirrored content, such as shown in Fig. 3.
S104:The user will be paid by the ISO bags of system testing.
In the technical scheme that the application is provided, system testing is carried out to installation again from unit testing to integration testing, it is real The continuous integrating of full-automation is showed, has not only increased the quality of code and the accuracy of service logic, effectively shortened and grind In the hair cycle, the efficiency of software kit payment is improve, so as to improve the efficiency of software development;And be effectively reduced manpower, The input of financial resources and material resources, with good socio-economic efficiency.
Fig. 4 is referred to, Fig. 4 is another software kit delivery method based on continuous integrating provided in an embodiment of the present invention Schematic flow sheet, in actual mechanical process, on the basis of above-described embodiment, has reality present invention also provides there is one The embodiment of function definition, the embodiment of the present invention for example may include herein below:
S401:Specifically consistent with described by embodiment S101, here is omitted.
S402:When code is detected into the code library, different code constructions are chosen in the code library pre- If the software kit of form, the software kit is sent to project software storehouse, and in the test environment that user builds, to described soft Part bag carries out integration testing.
S403:Detect the number of loads of continuous integration system.
Settable supervising device, the load of real-time monitoring CI systems.
S404:It is soft in the project when the number of loads no more than predetermined threshold value of the continuous integration system is detected Chosen in part storehouse and ISO bags are built by the software kit of integration testing, the ISO bags are arranged on by multiple things by PXE server On reason machine, the instruction of testing results script is sent to each physical machine, system testing is carried out with to the ISO bags.
It is general to choose CI systems in order to when building ISO bags and carrying out system testing, it is to avoid CI systems are impacted Load it is less, that is, workload it is smaller when carry out.
Predetermined threshold value can be 3, certainly, or other threshold values, can specifically be carried out according to the performance of actual CI systems Choose.In general, during evening, because staff mostly rests, the load run in CI systems is naturally less, therefore can be in evening On build and ISO bags and carry out system testing.
Due to ISO bags be can independent operating software kit, it is contemplated that the compatibility of ISO bags, multiple things can be attached it to On reason machine, system testing is carried out.
S405:The user will be paid by the ISO bags of system testing.
Due to the substantial amounts of code of code library memory storage, when code library setup time is more long, inevitably, in code library Can there is identical code, so-called identical code is same class compiler language perform function one group of code of identical.Identical Code does not only take up the capacity for taking code, but also certain manpower need to be spent to be safeguarded, waste of manpower, material resources and wealth Power;Additionally, being combined module in order to avoid follow-up, that is, when building the software kit of preset format, selection is identical code.Base In above-described embodiment, present invention also provides embodiment as described below.
Judge whether current code is identical with the code in the code library;
When the code in judging the current code and the code library is differed, the code was sent to the generation Code storehouse.
In the technical scheme that the application is provided, system testing is carried out to installation again from unit testing to integration testing, it is real The continuous integrating of full-automation is showed, has not only increased the quality of code and the accuracy of service logic, effectively shortened and grind In the hair cycle, the efficiency of software kit payment is improve, so as to improve the efficiency of software development;And be effectively reduced manpower, The input of financial resources and material resources, with good socio-economic efficiency.
It should be noted that, it is necessary to first enter to continuous integration system and test environment before above-described embodiment is carried out Row builds configuration, refers to Fig. 5, concretely:
Research staff is on working machine by git instruments upload code to code inspection instrument gerrit;Gerrit has Open flow of event monitors interface, and zuu monitors gerrit events by the interface, and (is such as gone up according to different event types Commit is passed, tag is uploaded, is submitted comment etc. to) task of the triggering in jenkins;Jenkins is some client/servers Server group into cluster is built, wherein perform all of structure task, part build task by jenkins by ssh or The modes such as fabric operate destination server to complete, including build RPM bags, build ISO bags and PXE installation processes.
The embodiment of the present invention is provided also directed to the software kit delivery method based on continuous integrating and realizes device accordingly, is entered One step causes that methods described has more practicality.The software kit based on continuous integrating provided in an embodiment of the present invention is paid below Device is introduced, and the software kit delivery installation based on continuous integrating described below is with above-described based on continuous integrating Software kit delivery method can be mutually to should refer to.
Fig. 6 is referred to, Fig. 6 is that the software kit delivery installation based on continuous integrating provided in an embodiment of the present invention has in one kind Structure chart in body implementation method, the device may include:
Code enters library module 601, examines successful code for being obtained from code inspection platform, and send it to code Storehouse.
Integration testing module 602, for when meeting pre-conditioned, different code constructions being chosen in the code library The software kit of preset format, the software kit is sent to project software storehouse, and in the test environment that user builds, to described Software kit carries out integration testing.
System test modules 603, ISO is built for being chosen in the project software storehouse by the software kit of integration testing , be arranged on the ISO bags in physical machine by PXE server by bag, and the instruction of testing results script is sent to the physical machine, System testing is carried out with to the ISO bags.
Delivery module 604, for the user will to be paid by the ISO bags of system testing.
Optionally, in some implementation methods of the present embodiment, the system test modules 603 may include:
Monitoring unit 6031, the number of loads for detecting continuous integration system;
Construction unit 6032, for when the number of loads no more than predetermined threshold value of the continuous integration system is detected, Chosen in the project software storehouse and ISO bags are built by the software kit of integration testing.
In other implementation methods of the present embodiment, the code enters library module 601 also to be included:
Judging unit, for judging whether current code is identical with the code in the code library;It is described current when judging When code in code and the code library is differed, the code is sent to the code library.
The function of each functional module of the software kit delivery installation based on continuous integrating can basis described in the embodiment of the present invention Method in above method embodiment is implemented, and it implements process and is referred to the correlation of above method embodiment retouches State, here is omitted.
From the foregoing, it will be observed that the embodiment of the present invention carries out system testing to installation again from unit testing to integration testing, realize Full-automatic continuous integrating, not only increases the quality of code and the accuracy of service logic, effectively shortens research and development week Phase, the efficiency of software kit payment is improve, so as to improve the efficiency of software development;And it is effectively reduced manpower, financial resources And the input of material resources, with good socio-economic efficiency.
Each embodiment is described by the way of progressive in this specification, and what each embodiment was stressed is and other The difference of embodiment, between each embodiment same or similar part mutually referring to.For being filled disclosed in embodiment For putting, because it is corresponded to the method disclosed in Example, so description is fairly simple, related part is referring to method part Illustrate.
Professional further appreciates that, with reference to the unit of each example of the embodiments described herein description And algorithm steps, can be realized with electronic hardware, computer software or the combination of the two, in order to clearly demonstrate hardware and The interchangeability of software, generally describes the composition and step of each example according to function in the above description.These Function is performed with hardware or software mode actually, depending on the application-specific and design constraint of technical scheme.Specialty Technical staff can realize described function to each specific application using distinct methods, but this realization should not Think beyond the scope of this invention.
The step of method or algorithm for being described with reference to the embodiments described herein, directly can be held with hardware, processor Capable software module, or the two combination is implemented.Software module can be placed in random access memory (RAM), internal memory, read-only deposit Reservoir (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or technology In field in known any other form of storage medium.
A kind of software kit delivery method and device based on continuous integrating provided by the present invention have been carried out in detail above Introduce.Specific case used herein is set forth to principle of the invention and implementation method, the explanation of above example It is only intended to help and understands the method for the present invention and its core concept.It should be pointed out that for the ordinary skill people of the art Member for, under the premise without departing from the principles of the invention, some improvement and modification can also be carried out to the present invention, these improve and Modification is also fallen into the protection domain of the claims in the present invention.

Claims (10)

1. a kind of software kit delivery method based on continuous integrating, it is characterised in that including:
Obtained from code inspection platform and examine successful code, and send it to code library;
When meeting pre-conditioned, the software kit of different code construction preset formats is chosen in the code library, will be described Software kit is sent to project software storehouse, and in the test environment that user builds, and integration testing is carried out to the software kit;
Chosen in the project software storehouse and ISO bags are built by the software kit of integration testing, will be described by PXE server ISO bags are arranged in physical machine, and the instruction of testing results script is sent to the physical machine, and system is carried out with to the ISO bags Test;
The user will be paid by the ISO bags of system testing.
2. method according to claim 1, it is characterised in that described to be chosen by integrated survey in the project software storehouse The software kit of examination builds ISO bags to be included:
Detect the number of loads of continuous integration system;
When the number of loads no more than predetermined threshold value of the continuous integration system is detected, chosen in the project software storehouse ISO bags are built by the software kit of integration testing.
3. method according to claim 1, it is characterised in that described to be chosen by integrated survey in the project software storehouse The software kit of examination builds ISO bags to be included:
Chosen from the project software storehouse by the software kit of integration testing in Preset Time, build ISO bags.
4. method according to claim 3, it is characterised in that described pre-conditioned to be:
Detect code to enter the code library or current time is Preset Time.
5. the method according to Claims 1-4 any one, it is characterised in that it is described will be described by PXE server ISO bags are arranged in physical machine to be included:
It is the fileinfo of PXE server configuration to obtain the user;
DHCP, TFTP and Kickstart are configured according to the fileinfo, and by respective configuration file send to In corresponding server;
By the tftp server be downloaded in the physical machine ISO bags by the PXE server;
The ISO bags are attached to the physical machine using the Kickstart servers.
6. method according to claim 5, it is characterised in that the code library that sends it to includes:
Judge whether current code is identical with the code in the code library;
When the code in judging the current code and the code library is differed, the code is sent to the code Storehouse.
7. method according to claim 5, it is characterised in that described acquisition from code inspection platform examines successful generation Code, and send it to code library and include:
Obtain the code that user is uploaded to the code inspection platform;
When receive the user code is checked by instruction after, the code is carried out code format inspection, compile Translate inspection and in the test environment that the user builds, unit testing is carried out to institute's code;
To be checked by code format inspection, compiling and the code of unit testing is sent to code library.
8. a kind of software kit delivery installation based on continuous integrating, it is characterised in that including:
Code enters library module, examines successful code for being obtained from code inspection platform, and send it to code library;
Integration testing module, for when meeting pre-conditioned, choosing the default lattice of different code constructions in the code library The software kit of formula, the software kit is sent to project software storehouse, and in the test environment that user builds, to the software kit Carry out integration testing;
System test modules, ISO bags are built for being chosen in the project software storehouse by the software kit of integration testing, are passed through Be arranged on the ISO bags in physical machine by PXE server, the instruction of testing results script is sent to the physical machine, with to institute Stating ISO bags carries out system testing;
Delivery module, for the user will to be paid by the ISO bags of system testing.
9. device according to claim 8, it is characterised in that the system test modules include:
Monitoring unit, the number of loads for detecting continuous integration system;
Construction unit, for when the number of loads no more than predetermined threshold value of the continuous integration system is detected, in the item Chosen in mesh software library and ISO bags are built by the software kit of integration testing.
10. device according to claim 9, it is characterised in that the code enters library module also to be included:
Judging unit, for judging whether current code is identical with the code in the code library;When the judgement current code When being differed with the code in the code library, the code is sent to the code library.
CN201710103920.XA 2017-02-24 2017-02-24 A kind of software kit delivery method and device based on continuous integrating Pending CN106897223A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710103920.XA CN106897223A (en) 2017-02-24 2017-02-24 A kind of software kit delivery method and device based on continuous integrating

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710103920.XA CN106897223A (en) 2017-02-24 2017-02-24 A kind of software kit delivery method and device based on continuous integrating

Publications (1)

Publication Number Publication Date
CN106897223A true CN106897223A (en) 2017-06-27

Family

ID=59184067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710103920.XA Pending CN106897223A (en) 2017-02-24 2017-02-24 A kind of software kit delivery method and device based on continuous integrating

Country Status (1)

Country Link
CN (1) CN106897223A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463371A (en) * 2017-07-01 2017-12-12 广州视源电子科技股份有限公司 Code management-control method and system
CN107577466A (en) * 2017-09-22 2018-01-12 郑州云海信息技术有限公司 A kind of RPM software kits Compilation Method and system based on linux system
CN108241493A (en) * 2018-01-09 2018-07-03 政采云有限公司 The automation continuous integrating of distributed software system and delivery method, device and system
CN109739507A (en) * 2018-12-28 2019-05-10 睿驰达新能源汽车科技(北京)有限公司 A kind of code continuous integrating method and code continue delivery method
CN109828886A (en) * 2018-12-29 2019-05-31 南京南瑞信息通信科技有限公司 CI/CD monitoring method and system under a kind of container cloud environment
CN110286880A (en) * 2019-06-17 2019-09-27 中国科学院软件研究所 A kind of complete continuous integrating method of data capture towards GitHub Yu Travis CI
CN112527380A (en) * 2020-12-04 2021-03-19 中国航空工业集团公司成都飞机设计研究所 Continuous integration method oriented to embedded high-security software

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880546A (en) * 2012-09-03 2013-01-16 上海方正数字出版技术有限公司 Software integration testing method and system based on extensible markup language (XML) database
CN103336688A (en) * 2013-06-20 2013-10-02 中标软件有限公司 Software integrating method and system oriented to cloud computing software research and development process
WO2015112170A1 (en) * 2014-01-27 2015-07-30 Hewlett-Packard Development Company, L.P. Continuous integration with reusable context aware jobs
CN105095089A (en) * 2015-09-14 2015-11-25 北京金山安全软件有限公司 Method and device for testing performance of application software
CN106227657A (en) * 2016-07-18 2016-12-14 浪潮(北京)电子信息产业有限公司 A kind of continuous integrating method and apparatus virtualizing cloud system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880546A (en) * 2012-09-03 2013-01-16 上海方正数字出版技术有限公司 Software integration testing method and system based on extensible markup language (XML) database
CN103336688A (en) * 2013-06-20 2013-10-02 中标软件有限公司 Software integrating method and system oriented to cloud computing software research and development process
WO2015112170A1 (en) * 2014-01-27 2015-07-30 Hewlett-Packard Development Company, L.P. Continuous integration with reusable context aware jobs
CN105095089A (en) * 2015-09-14 2015-11-25 北京金山安全软件有限公司 Method and device for testing performance of application software
CN106227657A (en) * 2016-07-18 2016-12-14 浪潮(北京)电子信息产业有限公司 A kind of continuous integrating method and apparatus virtualizing cloud system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463371A (en) * 2017-07-01 2017-12-12 广州视源电子科技股份有限公司 Code management-control method and system
CN107463371B (en) * 2017-07-01 2020-05-12 广州视源电子科技股份有限公司 Code management and control method and system
CN107577466A (en) * 2017-09-22 2018-01-12 郑州云海信息技术有限公司 A kind of RPM software kits Compilation Method and system based on linux system
CN108241493A (en) * 2018-01-09 2018-07-03 政采云有限公司 The automation continuous integrating of distributed software system and delivery method, device and system
CN109739507A (en) * 2018-12-28 2019-05-10 睿驰达新能源汽车科技(北京)有限公司 A kind of code continuous integrating method and code continue delivery method
CN109828886A (en) * 2018-12-29 2019-05-31 南京南瑞信息通信科技有限公司 CI/CD monitoring method and system under a kind of container cloud environment
CN109828886B (en) * 2018-12-29 2021-08-24 南京南瑞信息通信科技有限公司 CI/CD monitoring method and system under container cloud environment
CN110286880A (en) * 2019-06-17 2019-09-27 中国科学院软件研究所 A kind of complete continuous integrating method of data capture towards GitHub Yu Travis CI
CN112527380A (en) * 2020-12-04 2021-03-19 中国航空工业集团公司成都飞机设计研究所 Continuous integration method oriented to embedded high-security software

Similar Documents

Publication Publication Date Title
CN106897223A (en) A kind of software kit delivery method and device based on continuous integrating
US9940225B2 (en) Automated error checking system for a software application and method therefor
US8978015B2 (en) Self validating applications
WO2020140820A1 (en) Software testing method, system, apparatus, device, medium, and computer program product
CN105302716B (en) Test method, device under the development mode of interflow
US7694181B2 (en) Automated software testing framework
US20170161059A1 (en) Management of multiple application programming interface versions for development environments
KR102341154B1 (en) High-speed application for installation on mobile devices for permitting remote configuration of such mobile devices
US9189317B1 (en) Software sustaining system
US10817267B2 (en) State machine representation of a development environment deployment process
CN110647332A (en) Software deployment method and device based on container cloud
CN104125504B (en) Deployment method, device and system based on continuous integration
US8661414B2 (en) Method and system for testing an order management system
CN106648762B (en) Method and device for building development environment
CN106502713A (en) A kind of method for upgrading software and system
US10120707B2 (en) Deployment of development environments
CN110727575B (en) Information processing method, system, device and storage medium
CN109558313B (en) Method and device for constructing abnormal test scene
CN114546819A (en) Code processing method and device, electronic equipment and readable medium
US10394534B2 (en) Framework for flexible logging of development environment deployment
CN113010422A (en) Mirror image file testing method and device, electronic equipment and readable storage medium
KR101123685B1 (en) System and method for upgrading program in terminal with dynamic software upgrade technology
CN107220092B (en) Method for deploying software, control server, readable medium and storage controller
JP2002077071A (en) Automatic fault diagnosis and correction method for private wireless network
US20240143468A1 (en) System and methods for testing microservices

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170627