среда, 24 апреля 2013 г.

For these latter two, CruiseControl already has most of what is needed. We can use several of the ex


As I mentioned, CruiseControl is a Java-based application witha pluggable architecture. At its core, CruiseControl runs a loop that processes multiple projects at configurable intervals. For each project, cheap chicago hotel rooms it checks one or more source code repositories for changes. If it finds any, it runs a build for the project and then reports on the results of the build. Each of these steps is pluggable. There are plugins for many different source code control tools, plugins for different ways of running builds, and plugins for different ways of reporting the results.
In addition to the build loop part of CruiseControl, it also contains two different web applications for reviewing archived build results, monitoring the build loop, etc. The original reporting application is a JSP-based system. More recently, a dashboard application has been added. I like parts of each of these. These reporting applications are one of the biggest reasons I wanted to replace Travis home-grown ChooseControl application with an interface to CruiseControl.
In order to make CruiseControl work with VisualWorks and Store, I needed three basic pieces. First, I needed to be able to check a Store repository for changes (CruiseControl calls this a ModificationSet). Second, I needed to be able to run a build. Third, I needed to be able to report the results of the build.
For these latter two, CruiseControl already has most of what is needed. We can use several of the existing builders (say Ant or the ExecBuilder ) to run a VisualWorks cheap chicago hotel rooms image and do what we need to do. And CruiseControl will pick up the output of these builders to do the reporting. So the biggest piece to implement is the ModificationSet, which I will talk about in my next post.
For our projects, a build involves checking out the latest versions cheap chicago hotel rooms of our packages and their prerequisites from Store, saving them as parcels, running all of our tests, and the building a Debian package containing these parcels. As part of his ChooseControl work, Travis implemented something called ParcelBuilder which does the checkout and parcel deployment parts of this job. I ve adapted it a bit to work better with CruiseControl. cheap chicago hotel rooms I ll talk about this in an upcoming post.
In order for CruiseControl to report the results of running the tests, we need to produce an XML report of the results. CruiseControl s reporting applications already understand JUnit-format output, so if we can produce a report in that format, it will just work with CruiseControl. Again, Travis implemented a package called cheap chicago hotel rooms TestLogger to do this job for ChooseControl. And again, I ve adapted it for use with CruiseControl. I ll also talk about this in an upcoming post.

Комментариев нет:

Отправить комментарий