From gigix1980 at gmail.com Thu Feb 1 20:51:03 2007 From: gigix1980 at gmail.com (Jeff Xiong) Date: Fri, 2 Feb 2007 09:51:03 +0800 Subject: [Cruisecontrolrb-developers] New comer say HI to everyone In-Reply-To: <20fd9dc50701312239t69777400lf64911e6787007c4@mail.gmail.com> References: <20fd9dc50701312239t69777400lf64911e6787007c4@mail.gmail.com> Message-ID: <20fd9dc50702011751vaccbfd5j9cdceada81af71f2@mail.gmail.com> Hi there. I'm Jeff Xiong from ThoughtWorks China, and I'm a new comer of cc.rb project. I wish I can contribute to this project. I have checked out the source code and it's now running well on my local machine -- it does work on our current project! And I'm reading the stories list. How can I put my hands in and give help? -- Jeff Xiong Software Journeyman From jeremystellsmith at gmail.com Thu Feb 1 23:30:05 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Thu, 1 Feb 2007 20:30:05 -0800 Subject: [Cruisecontrolrb-developers] Fwd: Fw: UI Mockups In-Reply-To: References: Message-ID: so we have some ui mockups, take a look and let us know what you think. I'm gonna take a crack at implementing easy stuff from them, but I'm treating them as a starting point, rather than something that is already decided. Rolf's comments are below. Thank you, Josh and Darci, this is a pretty amazing job :) Jeremy Rolf Russell/UK/ThoughtWorks wrote on 02/01/2007 04:39:38 PM: > This is brilliant! The look and feel is much much better. > > Couple thoughts: > - on the dashboard: I would go with "15-Jan-07 18:04" for build > time instead of "30 minutes ago". I find "30 minutes ago" less intuitive. > - on the details page: I'm not convinced people would use the > "" and also find that line noisy. How about removing them? > - on the details page: We should emphasize the first 577 more than > "of 577". Bold perhaps? > - on the details page: Red would stick out more for "2007/01/31 > build 574" or the word "failed" on the righthand side. > - on the details page: Include the time on righthand side: > "2007/01/31 build 574" --> "2007/01/31 18:43 build 574" > - on the details page: Test Failures and Errors are more important > than Build Changeset. Especially on big checkins. I would switch > their positions. > > What does everyone else think? > > --Rolf > > __________________ > Rolf Russell > Innovation Facilitator > ThoughtWorks Inc > +1 312 925 0608 > > Josh Evnin/US/ThoughtWorks > 02/01/2007 05:40 PM > > To > > Jeremy Stell-Smith/Corporate/ThoughtWorks/US at ThoughtWorks, Rolf > Russell/UK/ThoughtWorks at ThoughtWorks > > cc > > Subject > > Fw: UI Mockups > > the rubyforge address isn't working for this...please forward to > anybody who'll be interested... > > Josh > ________________________________________ > Josh Evnin | ThoughtWorks > Interaction Designer & Business Analyst > Mobile: 812-345-9833 > Yahoo: josh_evnin > ----- Forwarded by Josh Evnin/US/ThoughtWorks on 02/01/07 05:39 PM ----- > > Josh Evnin/US/ThoughtWorks > 02/01/07 03:03 PM > > To > > cruisecontrolrb-developers at rubyforge.org > > cc > > Darci Dutcher/US/ThoughtWorks at ThoughtWorks > > Subject > > UI Mockups > > Hey everybody, > > We've been hard at work on our end...check out the latest mockups. > Would love to hear some feedback. Not sure if I'll be available > tomorrow morning for the standup...anybody want to schedule some other > time to talk? > > [attachment "rake.gif" deleted by Jeremy Stell- > Smith/Corporate/ThoughtWorks/US] [attachment "dashboard.gif" deleted > by Jeremy Stell-Smith/Corporate/ThoughtWorks/US] > > Josh > > ________________________________________ > Josh Evnin | ThoughtWorks > Interaction Designer & Business Analyst > Mobile: 812-345-9833 > Yahoo: josh_evnin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070201/136defbd/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: rake.gif Type: image/gif Size: 29408 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070201/136defbd/attachment-0002.gif -------------- next part -------------- A non-text attachment was scrubbed... Name: dashboard.gif Type: image/gif Size: 15230 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070201/136defbd/attachment-0003.gif From jeremystellsmith at gmail.com Fri Feb 2 03:03:59 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Fri, 2 Feb 2007 00:03:59 -0800 Subject: [Cruisecontrolrb-developers] Fw: UI Mockups In-Reply-To: References: Message-ID: here's a start - http://cruise.onemanswalk.com apparently, alex was also busy w/ ui stuff today, so we'll have to talk more about where we're going tomorrow at the standup or after, so we can include josh & darci. it's starting to really look nice :) Jeremy On 2/1/07, Jeremy Stell-Smith wrote: > > so we have some ui mockups, take a look and let us know what you think. > I'm gonna take a crack at implementing easy stuff from them, but I'm > treating them as a starting point, rather than something that is already > decided. Rolf's comments are below. Thank you, Josh and Darci, this is a > pretty amazing job :) > > Jeremy > > > Rolf Russell/UK/ThoughtWorks wrote on 02/01/2007 04:39:38 PM: > > > This is brilliant! The look and feel is much much better. > > > > Couple thoughts: > > - on the dashboard: I would go with "15-Jan-07 18:04" for build > > time instead of "30 minutes ago". I find "30 minutes ago" less > intuitive. > > - on the details page: I'm not convinced people would use the > > "" and also find that line noisy. How about > removing them? > > - on the details page: We should emphasize the first 577 more than > > "of 577". Bold perhaps? > > - on the details page: Red would stick out more for "2007/01/31 > > build 574" or the word "failed" on the righthand side. > > - on the details page: Include the time on righthand side: > > "2007/01/31 build 574" --> "2007/01/31 18:43 build 574" > > - on the details page: Test Failures and Errors are more important > > than Build Changeset. Especially on big checkins. I would switch > > their positions. > > > > What does everyone else think? > > > > --Rolf > > > > __________________ > > Rolf Russell > > Innovation Facilitator > > ThoughtWorks Inc > > +1 312 925 0608 > > > > > Josh Evnin/US/ThoughtWorks > > 02/01/2007 05:40 PM > > > > To > > > > Jeremy Stell-Smith/Corporate/ThoughtWorks/US at ThoughtWorks, Rolf > > Russell/UK/ThoughtWorks at ThoughtWorks > > > > cc > > > > Subject > > > > Fw: UI Mockups > > > > the rubyforge address isn't working for this...please forward to > > anybody who'll be interested... > > > > Josh > > ________________________________________ > > Josh Evnin | ThoughtWorks > > Interaction Designer & Business Analyst > > Mobile: 812-345-9833 > > Yahoo: josh_evnin > > > ----- Forwarded by Josh Evnin/US/ThoughtWorks on 02/01/07 05:39 PM ----- > > > > Josh Evnin/US/ThoughtWorks > > 02/01/07 03:03 PM > > > > To > > > > cruisecontrolrb-developers at rubyforge.org > > > > cc > > > > Darci Dutcher/US/ThoughtWorks at ThoughtWorks > > > > Subject > > > > UI Mockups > > > > Hey everybody, > > > > We've been hard at work on our end...check out the latest mockups. > > Would love to hear some feedback. Not sure if I'll be available > > tomorrow morning for the standup...anybody want to schedule some other > > time to talk? > > > > [attachment "rake.gif" deleted by Jeremy Stell- > > Smith/Corporate/ThoughtWorks/US] [attachment "dashboard.gif" deleted > > by Jeremy Stell-Smith/Corporate/ThoughtWorks/US] > > > > Josh > > > > ________________________________________ > > Josh Evnin | ThoughtWorks > > Interaction Designer & Business Analyst > > Mobile: 812-345-9833 > > Yahoo: josh_evnin > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070202/4aeeba3d/attachment.html From jeremystellsmith at gmail.com Fri Feb 2 15:05:39 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Fri, 2 Feb 2007 12:05:39 -0800 Subject: [Cruisecontrolrb-developers] bug w/ builder Message-ID: things that make the build fail like : RuntimeError: Plugin error: EmailNotifier: Connection refused - connect(2) ./script/../config ... should be written to the build log, instead they're spit out to the screen and written to the buildER log, but from the webapp, all you see is build failed w/ an empty build log -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070202/0d0ef156/attachment.html From jeremystellsmith at gmail.com Fri Feb 2 16:51:47 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Fri, 2 Feb 2007 13:51:47 -0800 Subject: [Cruisecontrolrb-developers] the public site is up Message-ID: Hey guys, after WAY too much work the public site is up. (don't worry, most of it was just installing ruby/rails/mongrel/etc remotely and through a firewall) There is one critical feature missing that the builder won't reload project / server config files as it goes. So if you add your e-mail or whatever to a build, you won't get an e-mail till the next time the builder is stopped. I added the story, someone can take it if they want. It's here : http://cruisecontrolrb.thoughtworks.com/ Have fun -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070202/32c7dd5f/attachment.html From averkhov at thoughtworks.com Mon Feb 5 02:07:29 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Mon, 5 Feb 2007 01:07:29 -0600 Subject: [Cruisecontrolrb-developers] the public site is up In-Reply-To: Message-ID: First impression on the new look and feel: awesome! This thing now looks more polished than it actually is. I feel inspired :) Alex "Jeremy Stell-Smith" Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/02/2007 02:51 PM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] the public site is up Hey guys, after WAY too much work the public site is up. (don't worry, most of it was just installing ruby/rails/mongrel/etc remotely and through a firewall) There is one critical feature missing that the builder won't reload project / server config files as it goes. So if you add your e-mail or whatever to a build, you won't get an e-mail till the next time the builder is stopped. I added the story, someone can take it if they want. It's here : http://cruisecontrolrb.thoughtworks.com/ Have fun_______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/00e3b28e/attachment.html From jeremystellsmith at gmail.com Mon Feb 5 13:53:14 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Mon, 5 Feb 2007 10:53:14 -0800 Subject: [Cruisecontrolrb-developers] ui conversation Message-ID: notes from our ui conversation, feel free to add to them : http://cruisecontrolrb.rubyforge.org/wiki/wiki.pl?User_Experience -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/554ac1d8/attachment.html From RRussell at thoughtworks.com Mon Feb 5 19:06:06 2007 From: RRussell at thoughtworks.com (Rolf Russell) Date: Mon, 5 Feb 2007 18:06:06 -0600 Subject: [Cruisecontrolrb-developers] can't make tomorrow's (tues) standup Message-ID: -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/497b9600/attachment.html From jevnin at thoughtworks.com Mon Feb 5 20:02:47 2007 From: jevnin at thoughtworks.com (Josh Evnin) Date: Mon, 5 Feb 2007 19:02:47 -0600 Subject: [Cruisecontrolrb-developers] Updated CSS Message-ID: I updated the CSS to reflect some of the changes we talked about this afternoon. I didn't have a chance to work on any of the positioning, that can happen tomorrow. Talk to you all in the morning. Josh ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/1337ca43/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: cruisecontrol.css Type: application/x-css Size: 5688 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/1337ca43/attachment-0001.bin From averkhov at thoughtworks.com Mon Feb 5 21:05:17 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Mon, 5 Feb 2007 20:05:17 -0600 Subject: [Cruisecontrolrb-developers] Updated CSS In-Reply-To: Message-ID: Checked them in as revision 107 (together with a few of my own tweaks). One thing I didn't check in was the highlighting of a failed build on the dashboard. The reason I prefer to have an ugly pink background is twofold: 1. it should be highly visible from 10 meters away, and a thin dashed border line isn't. 2. a failing build *should not* look pretty, in my very humble opinion. It's a little bit of social engineering. We can pick up a different color that works better with #507ec0, but a big coloured blob is what we need. Alex Josh Evnin Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/05/2007 06:02 PM To cruisecontrolrb-developers at rubyforge.org cc Darci Dutcher Subject [Cruisecontrolrb-developers] Updated CSS I updated the CSS to reflect some of the changes we talked about this afternoon. I didn't have a chance to work on any of the positioning, that can happen tomorrow. Talk to you all in the morning. Josh ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/4b3439f0/attachment.html -------------- next part -------------- A non-text attachment was scrubbed... Name: cruisecontrol.css Type: application/octet-stream Size: 5688 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/4b3439f0/attachment.obj From averkhov at thoughtworks.com Tue Feb 6 02:40:23 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Tue, 6 Feb 2007 01:40:23 -0600 Subject: [Cruisecontrolrb-developers] [ANN] CruiseControl.rb 0.4.0 Message-ID: CruiseControl.rb 0.4.0 is released. This is still an internal TW release. Everything is on RubyForge, but we are not yet announcing it to the world at large. In this release CC.rb becomes much smarter about handling plugins, and the Dashboard is looking awesome after some UI design love (more to come in the next version). Release 1.0 is getting closer by the hour. Changes: - pretty user interface - 'Build now' button - dashboard displays projects as panels, not table rows - monitoring cruisecontrol.rb builds with CCTray.net - browser autorefresh - seeing latest build status without hitting 'refresh' on browser - builder's current activity (down/sleeping/checking for modifications/building) on the dashboard - builder plugin may be packaged as a directory with multiple files. It must have init.rb then. - plugin error handler: if a plugin raises an error in response to notification, builder logs the error, notifies all other plugins, then raises an error of its own (thus triggering the build_loop_failed event) - improved error handling during builder initialization - Bugfix: blocked spaces in project names Download from: http://rubyforge.org/frs/?group_id=2918 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/aa409241/attachment.html From gigix1980 at gmail.com Tue Feb 6 07:21:41 2007 From: gigix1980 at gmail.com (Jeff Xiong) Date: Tue, 6 Feb 2007 20:21:41 +0800 Subject: [Cruisecontrolrb-developers] start to handle rcov reports Message-ID: <20fd9dc50702060421k2aef9e85g205732e7889a4f5d@mail.gmail.com> Hi there. I'm trying to deal with the rcov reports (the "see all build logs" story) and I have a question here: I generated rcov reports with rails_rcov plugin, and the reports are in HTML format, while I saw some code about coverage reports dealing with log files like "coverage-units.log". So I wanna know: what format should we handle? And Jeremy mentioned there are coverage reports from a customer need to be handled, can anyone share those sample files to me? Thanks a lot. -- Jeff Xiong Software Journeyman From qzhao at thoughtworks.com Tue Feb 6 10:05:26 2007 From: qzhao at thoughtworks.com (Peter Zhao) Date: Tue, 6 Feb 2007 09:05:26 -0600 Subject: [Cruisecontrolrb-developers] questions of force build story Message-ID: Hi, I have some questions about the force build story: - What build label should be used if it is a force build? So far the force build just calls project.build to build latest version of svn and therefore the build label is something like "build #{svn_latest_version}" which means the force build always replace the latest build result if it exists. - Where should the comment of force build be used? in the build label or in a log file? Is the comment really needed? I feel it is not very useful to collect the comment when force build as the purpose of force build is " so that I can verify a build status (broken) is consistently reproducible for the code base. ". Any opinions? Thanks Peter Zhao -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/b2be4359/attachment.html From RRussell at thoughtworks.com Tue Feb 6 12:29:00 2007 From: RRussell at thoughtworks.com (Rolf Russell) Date: Tue, 6 Feb 2007 11:29:00 -0600 Subject: [Cruisecontrolrb-developers] fatal browser error Message-ID: cruisecontrolrb.thoughtworks.com just took out my firefox. There is an infinite loop of the below errors. Not sure what happened. I was away from my computer and when I came back I got this: -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/1ad0a2ba/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 8416 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/1ad0a2ba/attachment-0002.gif -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 5397 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/1ad0a2ba/attachment-0003.gif From jeremystellsmith at gmail.com Tue Feb 6 13:17:17 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Tue, 6 Feb 2007 10:17:17 -0800 Subject: [Cruisecontrolrb-developers] questions of force build story In-Reply-To: References: Message-ID: I would vote for either on build 38 if the build is force, the new build is build 38 (forced) and every build after that just overwrites build 38 (forced) or build 38 (forced 1 time) build 38 (forced 2 times) build 38 (forced 3 times) etc and I agree, I don't think we should have a comment on a force build, I think it's unnecessary complexity jeremy On 2/6/07, Peter Zhao wrote: > > > Hi, > > I have some questions about the force build story: > > - What build label should be used if it is a force build? So far the force > build just calls project.build to build latest version of svn and > therefore the build label is something like "build #{svn_latest_version}" > which means the force build always replace the latest build result if it > exists. > > - Where should the comment of force build be used? in the build label or > in a log file? Is the comment really needed? I feel it is not very useful to > collect the comment when force build as the purpose of force build is "so > that I can verify a build status (broken) is consistently reproducible for > the code base. ". > > Any opinions? > > Thanks > > Peter Zhao > _______________________________________________ > Cruisecontrolrb-developers mailing list > Cruisecontrolrb-developers at rubyforge.org > http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/7152e7c4/attachment.html From RRussell at thoughtworks.com Tue Feb 6 13:33:53 2007 From: RRussell at thoughtworks.com (Rolf Russell) Date: Tue, 6 Feb 2007 12:33:53 -0600 Subject: [Cruisecontrolrb-developers] [ANN] CruiseControl.rb 0.4.0 In-Reply-To: Message-ID: You can see the app running live at: cruisecontrolrb.thoughtworks.com --Rolf Alexey Verkhovsky Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/06/2007 01:40 AM To ThoughtWorks-dynamic-languages at lists.wazokazi.com, thoughtworks-software-development at lists.wazokazi.com cc cruisecontrolrb-developers at rubyforge.org Subject [Cruisecontrolrb-developers] [ANN] CruiseControl.rb 0.4.0 CruiseControl.rb 0.4.0 is released. This is still an internal TW release. Everything is on RubyForge, but we are not yet announcing it to the world at large. In this release CC.rb becomes much smarter about handling plugins, and the Dashboard is looking awesome after some UI design love (more to come in the next version). Release 1.0 is getting closer by the hour. Changes: - pretty user interface - 'Build now' button - dashboard displays projects as panels, not table rows - monitoring cruisecontrol.rb builds with CCTray.net - browser autorefresh - seeing latest build status without hitting 'refresh' on browser - builder's current activity (down/sleeping/checking for modifications/building) on the dashboard - builder plugin may be packaged as a directory with multiple files. It must have init.rb then. - plugin error handler: if a plugin raises an error in response to notification, builder logs the error, notifies all other plugins, then raises an error of its own (thus triggering the build_loop_failed event) - improved error handling during builder initialization - Bugfix: blocked spaces in project names Download from: http://rubyforge.org/frs/?group_id=2918 _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/90d5e9eb/attachment.html From averkhov at thoughtworks.com Tue Feb 6 14:42:09 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Tue, 6 Feb 2007 13:42:09 -0600 Subject: [Cruisecontrolrb-developers] questions of force build story In-Reply-To: Message-ID: So far, Peter is doing the following numbering scheme: 38, 38.1, 38.2. Where 38 is the original build for rev 38, and 38.N is an Nth attempt to rebuild it. And saying "no" to force build comments looks like a consensus opinion. Alex "Jeremy Stell-Smith" Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/06/2007 11:17 AM To "Peter Zhao" cc cruisecontrolrb-developers at rubyforge.org Subject Re: [Cruisecontrolrb-developers] questions of force build story I would vote for either on build 38 if the build is force, the new build is build 38 (forced) and every build after that just overwrites build 38 (forced) or build 38 (forced 1 time) build 38 (forced 2 times) build 38 (forced 3 times) etc and I agree, I don't think we should have a comment on a force build, I think it's unnecessary complexity jeremy On 2/6/07, Peter Zhao wrote: Hi, I have some questions about the force build story: - What build label should be used if it is a force build? So far the force build just calls project.build to build latest version of svn and therefore the build label is something like "build #{svn_latest_version}" which means the force build always replace the latest build result if it exists. - Where should the comment of force build be used? in the build label or in a log file? Is the comment really needed? I feel it is not very useful to collect the comment when force build as the purpose of force build is " so that I can verify a build status (broken) is consistently reproducible for the code base. ". Any opinions? Thanks Peter Zhao _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/9b71d23a/attachment.html From averkhov at thoughtworks.com Tue Feb 6 14:49:30 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Tue, 6 Feb 2007 13:49:30 -0600 Subject: [Cruisecontrolrb-developers] fatal browser error In-Reply-To: Message-ID: I guess, I know why this happens. You left your browser running when Jeremy added two more projects. And the autorefresh code doesn't handle that. Such a cute little bug! :) Added a story to rel 0.5.0 to fix this. Alex Rolf Russell Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/06/2007 10:29 AM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] fatal browser error cruisecontrolrb.thoughtworks.com just took out my firefox. There is an infinite loop of the below errors. Not sure what happened. I was away from my computer and when I came back I got this: _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/aac4e25d/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 8416 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/aac4e25d/attachment-0002.gif -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 5397 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/aac4e25d/attachment-0003.gif From averkhov at thoughtworks.com Tue Feb 6 17:17:56 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Tue, 6 Feb 2007 16:17:56 -0600 Subject: [Cruisecontrolrb-developers] Critical bug in 0.4.0 Message-ID: Hey guys, I just fixed (revision 117) a critical bug on Windoze. Namely, dashboard freezes in ProjectBlocker.block? if a builder is running. Sadly, this bug is in version 0.4.0. Looks like a maintenance release is due, meantime if anybody tells you about it, respond with the dreaded "already fixed in trunk". Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/cb85275c/attachment.html From averkhov at thoughtworks.com Tue Feb 6 18:35:30 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Tue, 6 Feb 2007 17:35:30 -0600 Subject: [Cruisecontrolrb-developers] Default dashboard environment is changed to 'production' Message-ID: I have just checked in a change (revision 121) that sets RAILS_ENV to production by default. Reason: this is the correct default for users. Of course, it's not the right default for developers. So, now when you start dashboard on the command line, you need to be explicit: cruise start -e development RadRails does it automatically. Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070206/2a3a80a0/attachment.html From gigix1980 at gmail.com Wed Feb 7 10:25:05 2007 From: gigix1980 at gmail.com (Jeff Xiong) Date: Wed, 7 Feb 2007 23:25:05 +0800 Subject: [Cruisecontrolrb-developers] [patch]integrate rcov reports Message-ID: <20fd9dc50702070725i2bcbbea9w8018cf2ecfc5b2d2@mail.gmail.com> Hi there. I tried to integrate rcov reports. I selected the simplest solution: symbol-link the build artifacts directories into $CC_HOME/public directory, so that users can access rcov reports directly. The attachment is my modifications of the source code. -- Jeff Xiong Software Journeyman -------------- next part -------------- Index: /home/gigix/Projects/cc.rb/app/models/build.rb =================================================================== --- /home/gigix/Projects/cc.rb/app/models/build.rb (revision 139) +++ /home/gigix/Projects/cc.rb/app/models/build.rb (working copy) @@ -1,4 +1,5 @@ class Build + COVERAGE_REPORT_DIR = "coverage" include CommandLine attr_reader :project, :label @@ -17,6 +18,10 @@ @label end end + + def publish_name + "#{@project.name}-build-#{label}" + end def run build_log = artifact 'build.log' @@ -29,6 +34,26 @@ rescue => e CruiseControl::Log.verbose? ? CruiseControl::Log.debug(e) : CruiseControl::Log.info(e.message) @status.fail! + ensure + Dir.chdir(project.local_checkout) do + FileUtils.cp_r(COVERAGE_REPORT_DIR, artifacts_directory) if File.directory?(COVERAGE_REPORT_DIR) + end + end + + def coverage_reports + return [] unless File.directory?(coverage_report_dest) + result = [] + collect_coverage_reports(coverage_report_dest, result) + result + end + + def collect_coverage_reports(basedir, result) + Dir.new(basedir).each do |entry| + next if entry == "." || entry == ".." + entry = basedir + "/" + entry + collect_coverage_reports(entry, result) if File.directory?(entry) + result << CoverageReport.new(entry, artifacts_directory) if entry.include?("index.html") + end end def successful? @@ -108,5 +133,7 @@ end private - + def coverage_report_dest + artifacts_directory + "/" + COVERAGE_REPORT_DIR + end end Index: /home/gigix/Projects/cc.rb/app/models/coverage_report.rb =================================================================== --- /home/gigix/Projects/cc.rb/app/models/coverage_report.rb (revision 0) +++ /home/gigix/Projects/cc.rb/app/models/coverage_report.rb (revision 0) @@ -0,0 +1,7 @@ +class CoverageReport + attr_reader :file + + def initialize(full_path, basedir) + @file = full_path.gsub(basedir + "/", "") + end +end \ No newline at end of file Index: /home/gigix/Projects/cc.rb/app/views/projects/show.rhtml =================================================================== --- /home/gigix/Projects/cc.rb/app/views/projects/show.rhtml (revision 139) +++ /home/gigix/Projects/cc.rb/app/views/projects/show.rhtml (working copy) @@ -39,3 +39,15 @@ + +
+
Coverage Reports
+
+
+ <% if @build.coverage_reports.empty? %>None<% end %> + <% @build.coverage_reports.each do |report| %> + <%= link_to report.file, "/#{@build.publish_name}/#{report.file}" %>
+ <% end %> +
+
+
\ No newline at end of file Index: /home/gigix/Projects/cc.rb/builder_plugins/installed/artifacts_publisher.rb =================================================================== --- /home/gigix/Projects/cc.rb/builder_plugins/installed/artifacts_publisher.rb (revision 0) +++ /home/gigix/Projects/cc.rb/builder_plugins/installed/artifacts_publisher.rb (revision 0) @@ -0,0 +1,14 @@ +class ArtifactsPublisher + + def initialize(project) + end + + def build_finished(build) + Dir.chdir("public") do + FileUtils.ln_sf build.artifacts_directory, build.publish_name + end + end + +end + +Project.plugin :artifacts_publisher \ No newline at end of file Index: /home/gigix/Projects/cc.rb/test/unit/build_test.rb =================================================================== --- /home/gigix/Projects/cc.rb/test/unit/build_test.rb (revision 139) +++ /home/gigix/Projects/cc.rb/test/unit/build_test.rb (working copy) @@ -153,4 +153,20 @@ assert_equal 3.2, Build.new(project, 3.2).label end + def test_build_should_know_test_coverage_reports + with_sandbox_project do |sandbox, project| + sandbox.new :file => "build-1/coverage/index.html" + sandbox.new :file => "build-1/coverage/units/index.html" + sandbox.new :file => "build-1/coverage/functionals/index.html" + build = Build.new(project, 1) + assert_equal(3, build.coverage_reports.length) + end + end + + def test_build_should_know_its_publish_name + with_sandbox_project do |sandbox, project| + build = Build.new(project, 1) + assert_equal "my_project-build-1", build.publish_name + end + end end Index: /home/gigix/Projects/cc.rb/test/unit/coverage_report_test.rb =================================================================== --- /home/gigix/Projects/cc.rb/test/unit/coverage_report_test.rb (revision 0) +++ /home/gigix/Projects/cc.rb/test/unit/coverage_report_test.rb (revision 0) @@ -0,0 +1,11 @@ +require File.dirname(__FILE__) + '/../test_helper' + +class CoverageReportTest < Test::Unit::TestCase + def test_should_able_to_instantiate_coverage_report_with_file_path + basedir = "/path/to/build" + report_file = "report/file" + report_path = basedir + "/" + report_file + report = CoverageReport.new(report_path, basedir) + assert_equal report_file, report.file + end +end \ No newline at end of file From jevnin at thoughtworks.com Wed Feb 7 11:43:34 2007 From: jevnin at thoughtworks.com (Josh Evnin) Date: Wed, 7 Feb 2007 10:43:34 -0600 Subject: [Cruisecontrolrb-developers] Panel Design Concept Message-ID: I'm hungry for some feedback on how this panel design looks. Is the "thoughtbubble" idea too weird? Is the red gradient bar in the background a good signal that a project's build is failing? Any comments appreciated... ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/a6b6cf19/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: dashboard_take2.png Type: image/png Size: 28846 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/a6b6cf19/attachment-0001.png From averkhov at thoughtworks.com Wed Feb 7 13:07:19 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Wed, 7 Feb 2007 12:07:19 -0600 Subject: [Cruisecontrolrb-developers] Panel Design Concept In-Reply-To: Message-ID: My $.02: Gradient fill serves the same purpose, but looks more polished than a uniformly colored rectangle. Thoughtbubble is weird, fancy, and I honestly don't know how to implement it in HTML without too many gimmicks. What happened to your earlier "unnecessary lines create visual clutter" statement? :) However, I really like the layout that places the last 5 builds section under the project heading on the left side and uses the huge right-hand side for as much details about the last build as we can put there. It has the right flow. Maybe we just don't need to create any borders around the last build details section? Build Now button belongs somewhere near the last 5 builds section, as this action is conceptually linked to the project and somewhat less so to the build history, but definitely not to last build details. Keep in mind that we have to place a builder status line (with values empty for sleeping | "BUILDER DOWN" | "checking for modifications" | "building") somewhere. Next to the project title is the most logical place (that's where it is now. Alex Josh Evnin Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/07/2007 09:43 AM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] Panel Design Concept I'm hungry for some feedback on how this panel design looks. Is the "thoughtbubble" idea too weird? Is the red gradient bar in the background a good signal that a project's build is failing? Any comments appreciated... ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/26da3157/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: dashboard_take2.png Type: application/octet-stream Size: 28846 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/26da3157/attachment-0001.obj From RRussell at thoughtworks.com Wed Feb 7 14:30:22 2007 From: RRussell at thoughtworks.com (Rolf Russell) Date: Wed, 7 Feb 2007 13:30:22 -0600 Subject: [Cruisecontrolrb-developers] Panel Design Concept In-Reply-To: Message-ID: I'm a fan of the mouse hover for checkin comments. It's something you want to see less often than success/failure and who checked in. --Rolf Alexey Verkhovsky Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/07/2007 12:07 PM To cruisecontrolrb-developers at rubyforge.org cc Subject Re: [Cruisecontrolrb-developers] Panel Design Concept My $.02: Gradient fill serves the same purpose, but looks more polished than a uniformly colored rectangle. Thoughtbubble is weird, fancy, and I honestly don't know how to implement it in HTML without too many gimmicks. What happened to your earlier "unnecessary lines create visual clutter" statement? :) However, I really like the layout that places the last 5 builds section under the project heading on the left side and uses the huge right-hand side for as much details about the last build as we can put there. It has the right flow. Maybe we just don't need to create any borders around the last build details section? Build Now button belongs somewhere near the last 5 builds section, as this action is conceptually linked to the project and somewhat less so to the build history, but definitely not to last build details. Keep in mind that we have to place a builder status line (with values empty for sleeping | "BUILDER DOWN" | "checking for modifications" | "building") somewhere. Next to the project title is the most logical place (that's where it is now. Alex Josh Evnin Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/07/2007 09:43 AM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] Panel Design Concept I'm hungry for some feedback on how this panel design looks. Is the "thoughtbubble" idea too weird? Is the red gradient bar in the background a good signal that a project's build is failing? Any comments appreciated... ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/1a074cd8/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: dashboard_take2.png Type: application/octet-stream Size: 28846 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/1a074cd8/attachment-0001.obj From averkhov at thoughtworks.com Wed Feb 7 17:24:25 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Wed, 7 Feb 2007 16:24:25 -0600 Subject: [Cruisecontrolrb-developers] vendor/rails is now pointing to Rails release 1.2.2 Message-ID: {subj} Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070207/715c9b2c/attachment.html From george at nutrun.com Wed Feb 7 17:28:34 2007 From: george at nutrun.com (george at nutrun.com) Date: Wed, 07 Feb 2007 22:28:34 +0000 Subject: [Cruisecontrolrb-developers] convert readme to textile Message-ID: <20070207222834.DC507183AB@nutrun.com> Hi guys, I could contribute to the 'convert readme to textile' story, if noone's working on it yet. Just one (silly) question. What's 'readme'? George Malamidis From jeremystellsmith at gmail.com Thu Feb 8 11:01:13 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Thu, 8 Feb 2007 08:01:13 -0800 Subject: [Cruisecontrolrb-developers] bug report Message-ID: something broke on cruisecontrolrb.thoughtworks.com, this is what I saw. * it hung, after detecting that new version 147 (this was after 3 failed builds, not sure if that's important) after killing the process, I restarted it. At this point subversion failed, saying working copy '.' locked, run 'svn cleanup' * the web app did NOT report this error, instead the builder went to sleep waking up 10 seconds later to the same error, again, and again i had to do some ugly stuff by hand to get it to do an svn up, it was do to us changing our svn:external for rails, but after I had that working, the whole thing worked again -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070208/c2f1f3cf/attachment.html From jevnin at thoughtworks.com Mon Feb 5 15:27:38 2007 From: jevnin at thoughtworks.com (Josh Evnin) Date: Mon, 5 Feb 2007 14:27:38 -0600 Subject: [Cruisecontrolrb-developers] UI Mockup files Message-ID: Here are the colors/fonts: orange: #f28218 red: #cc0000 blue: #507ec0 lucida grande, arial, sans 11pt And the image files related to the mockups. For the .psd's if you don't have photoshop, you can view these with (the) GIMP, but won't be able to edit them... ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/f10a7eb2/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: UI Mocks Sent to Group.zip Type: application/zip Size: 1107428 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070205/f10a7eb2/attachment-0001.zip From jevnin at thoughtworks.com Fri Feb 9 13:07:01 2007 From: jevnin at thoughtworks.com (Josh Evnin) Date: Fri, 9 Feb 2007 12:07:01 -0600 Subject: [Cruisecontrolrb-developers] Updated Mockups Message-ID: ________________________________________ Josh Evnin | ThoughtWorks Interaction Designer & Business Analyst Mobile: 812-345-9833 Yahoo: josh_evnin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070209/994bc81c/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: mockups200702091200.zip Type: application/zip Size: 594544 bytes Desc: not available Url : http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070209/994bc81c/attachment-0001.zip From RRussell at thoughtworks.com Fri Feb 9 18:59:06 2007 From: RRussell at thoughtworks.com (Rolf Russell) Date: Fri, 9 Feb 2007 17:59:06 -0600 Subject: [Cruisecontrolrb-developers] convert readme to textile In-Reply-To: <20070207222834.DC507183AB@nutrun.com> Message-ID: README is the instructions for using CC.rb. It's in the download. We are going to be moving from a txt file textile in order to generate html to bundle in releases and maybe put on the website. --Rolf george at nutrun.com Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/07/2007 04:28 PM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] convert readme to textile Hi guys, I could contribute to the 'convert readme to textile' story, if noone's working on it yet. Just one (silly) question. What's 'readme'? George Malamidis _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070209/bc805281/attachment.html From jeremystellsmith at gmail.com Fri Feb 9 21:23:33 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Fri, 9 Feb 2007 18:23:33 -0800 Subject: [Cruisecontrolrb-developers] [patch]integrate rcov reports In-Reply-To: <20fd9dc50702070725i2bcbbea9w8018cf2ecfc5b2d2@mail.gmail.com> References: <20fd9dc50702070725i2bcbbea9w8018cf2ecfc5b2d2@mail.gmail.com> Message-ID: Hey jeff, I took the patch and reworked it a bit to fit in with our thinking. It's in there. After talking to alex we decided that it should be the builds responsibility to put builds into the artifacts directory. For example in our builds, we have desc 'Continuous build target' task :cruise => ['test:units:rcov', 'test:functionals:rcov', 'test:integration'] do out = ENV['CC_BUILD_ARTIFACTS'] || 'out' mv 'coverage/units', "#{out}/unit test coverage" mv 'coverage/functionals', "#{out}/functional test coverage" end anything extra in the artifacts directory will get a link generated for it and put into the build page - look at unit test coverage & functional test coverage at http://cruisecontrolrb.thoughtworks.com/builds/CruiseControl/181 putting a link into CC_HOME/public dir won't work under windows, but we do need it, so there's an artifact action in the builds_controller now. it is basically a passthrough for build artifacts, such that links like : http://cruisecontrolrb.thoughtworks.com/builds/CruiseControl/181/unit+test+coverage/app-controllers-application_rb.html work as expected. ask me if anyone has any questions. Jeff we should talk about how we can get a thicker band of communication going between us here and you there. Jeremy On 2/7/07, Jeff Xiong wrote: > > Hi there. I tried to integrate rcov reports. I selected the simplest > solution: symbol-link the build artifacts directories into > $CC_HOME/public directory, so that users can access rcov reports > directly. The attachment is my modifications of the source code. > > -- > Jeff Xiong > Software Journeyman > > _______________________________________________ > Cruisecontrolrb-developers mailing list > Cruisecontrolrb-developers at rubyforge.org > http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070209/0e5c8c25/attachment.html From averkhov at thoughtworks.com Sat Feb 10 01:32:38 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Sat, 10 Feb 2007 00:32:38 -0600 Subject: [Cruisecontrolrb-developers] [patch]integrate rcov reports In-Reply-To: Message-ID: > we should talk about how we can get a thicker band of communication going between us Absolutely. Everybody who did distributed development says that this is the biggest issue. They say, you end up spending a lot more time talking than on a co-located project. Email doesn't cut it, especially in the beginning (establishing common vision and trust by email doesn't work). We need to talk. 11 hours timezone difference sucks, and there is no good solution for that. However... I often do something on a PC at home around 9-11 pm my time (GMT-7). And so does Jeremy. So, Jeff, if you could keep either Skype or Yahoo IM client running on your comp, we could get a lot more opportunities to talk. Alex "Jeremy Stell-Smith" Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/09/2007 07:23 PM To "Jeff Xiong" cc cruisecontrolrb-developers at rubyforge.org Subject Re: [Cruisecontrolrb-developers] [patch]integrate rcov reports Hey jeff, I took the patch and reworked it a bit to fit in with our thinking. It's in there. After talking to alex we decided that it should be the builds responsibility to put builds into the artifacts directory. For example in our builds, we have desc 'Continuous build target' task :cruise => ['test:units:rcov', 'test:functionals:rcov', 'test:integration'] do out = ENV['CC_BUILD_ARTIFACTS'] || 'out' mv 'coverage/units', "#{out}/unit test coverage" mv 'coverage/functionals', "#{out}/functional test coverage" end anything extra in the artifacts directory will get a link generated for it and put into the build page - look at unit test coverage & functional test coverage at http://cruisecontrolrb.thoughtworks.com/builds/CruiseControl/181 putting a link into CC_HOME/public dir won't work under windows, but we do need it, so there's an artifact action in the builds_controller now. it is basically a passthrough for build artifacts, such that links like : http://cruisecontrolrb.thoughtworks.com/builds/CruiseControl/181/unit+test+coverage/app-controllers-application_rb.html work as expected. ask me if anyone has any questions. Jeff we should talk about how we can get a thicker band of communication going between us here and you there. Jeremy On 2/7/07, Jeff Xiong wrote: Hi there. I tried to integrate rcov reports. I selected the simplest solution: symbol-link the build artifacts directories into $CC_HOME/public directory, so that users can access rcov reports directly. The attachment is my modifications of the source code. -- Jeff Xiong Software Journeyman _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070210/e5533bb6/attachment.html From rpotter at anl.gov Sat Feb 10 02:23:28 2007 From: rpotter at anl.gov (Randall Potter) Date: Sat, 10 Feb 2007 01:23:28 -0600 Subject: [Cruisecontrolrb-developers] [patch] rspec support (partial) Message-ID: <45CD72F0.4080002@anl.gov> story: As a Dev, I would like CC.rb to display rspec failures in 'Test Failures and Errors', so that I can use rspec. Is this the appropriate way to submit patches? Thank you in advance for your time, rpotter --- app/models/test_failure_parser.rb (revision 181) +++ app/models/test_failure_parser.rb (working copy) @@ -1,25 +1,51 @@ class TestFailureParser - TEST_NAME_REGEX = /\S+/ - MESSAGE_REGEX = /\]\:\n([\s\S]+)/ - STACK_TRACE_REGEX = /\[([\s\S]*?)\]\:/ - TEST_FAILURE_BLOCK_REGEX = /^\s+\d+\) Failure:\n([\S\s]*?)\n\n/ + + TEST_FAILURE_BLOCK_REGEX = /^\s+?\d+\)(( Failure:)?\n[\S\s]*?)\n\n/ + + SPEC_FAILURE_FORMAT = /^'[\s\S]+'\sFAILED[\s\S]*?/ + TEST_UNIT_FAILURE_FORMAT = / Failure:\n(\S+)\n?\s+?\[([\s\S]*?)\]:\n([\s\S]+)/ + def get_test_failures(log) testFailures = Array.new log.gsub(TEST_FAILURE_BLOCK_REGEX) do |text| content = $1 - - begin - test_name = content.match(TEST_NAME_REGEX).to_s - message = content.match(MESSAGE_REGEX)[1] - stack_trace = content.match(STACK_TRACE_REGEX)[1] - - testFailures << TestErrorEntry.create_failure(test_name, message, stack_trace) - rescue - # Do Nothing, Pattern does not match - end + + if content.match(TEST_UNIT_FAILURE_FORMAT) + testFailures << parse_as_test_unit(content) + elsif content.gsub("\n",'').match(SPEC_FAILURE_FORMAT) + testFailures << parse_as_rspec(content) + else + # no failures or we don't recognize it + end + end testFailures end -end \ No newline at end of file + + private + + # parse Test::Unit log message and return TestErrorEntry + def parse_as_test_unit(content) + + test_name = content.match(TEST_UNIT_FAILURE_FORMAT)[1].to_s + message = content.match(TEST_UNIT_FAILURE_FORMAT)[3] + stack_trace = content.match(TEST_UNIT_FAILURE_FORMAT)[2] + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + + # parse rspec log message and return TestErrorEntry + def parse_as_rspec(content) + + spec_arr = content.split("\n") + + test_name = spec_arr[1].match(/^'([\s\S]+)' FAILED$/)[1].to_s + message = spec_arr[2].to_s + stack_trace = spec_arr.slice(3..spec_arr.length).join("\n") + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + +end --- test/unit/test_failure_parser_test.rb (revision 181) +++ working_copy/test/unit/test_failure_parser_test.rb (working copy) @@ -77,6 +77,34 @@ 83 tests, 185 assertions, 2 failures, 0 errors EOF +LOG_OUTPUT_WITH_NO_SPEC_FAILURE = < expected but was\n<\"abc\">.", @@ -121,5 +160,15 @@ "#.force_build_if_requested - expected calls: 1, actual calls: 2", "./test/unit/polling_scheduler_test.rb:44") end + + def expected_first_spec_failure + TestErrorEntry.create_failure("Given a request to edit with a week and year the controller should return a hash of one blank row if data ! found", + "nil should be a kind of Array", + "./spec/controllers/consultant_controller_spec.rb:47:\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:36:in `run'\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:47:\n" + + "/cruisecontrol/tasks/cc_build.rake:32:\n" + + "-e:1:") + end end \ No newline at end of file From averkhov at thoughtworks.com Sat Feb 10 11:55:45 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Sat, 10 Feb 2007 10:55:45 -0600 Subject: [Cruisecontrolrb-developers] [patch] rspec support (partial) In-Reply-To: <45CD72F0.4080002@anl.gov> Message-ID: Thanks a lot! > Is this the appropriate way to submit patches? Yes, until we have a more appropriate way (aka a bug tracker). This submission raises a question that was at the back of my mind ever since we had Test::Unit results formatter in this codebase. Custom formatting of build log is going to be in demand. How do we pluginize it? How about this solution: * Let's make formatting of build log a builder's responsibility. * This can be done by a builder plugin in response to :build_finished event Another question then arises: what do we want to do with intermediate build products? We don't really want to delete them (troubleshooting), but we also don't want to display links to them on the dashboard. I think, use hidden files for that. I.e., you start with build.log file. Format it and write the output into build.log.html (without html and body tags though, because we are displaying it on the dashboard page). It's also a good time to merge it with the changeset etc. Finally, hide the originals from the dashboard by renaming build.log to .build.log and changeset.log to .changeset.log. Thoughts? Best regards, Alex Randall Potter Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/10/2007 12:23 AM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] [patch] rspec support (partial) story: As a Dev, I would like CC.rb to display rspec failures in 'Test Failures and Errors', so that I can use rspec. Is this the appropriate way to submit patches? Thank you in advance for your time, rpotter --- app/models/test_failure_parser.rb (revision 181) +++ app/models/test_failure_parser.rb (working copy) @@ -1,25 +1,51 @@ class TestFailureParser - TEST_NAME_REGEX = /\S+/ - MESSAGE_REGEX = /\]\:\n([\s\S]+)/ - STACK_TRACE_REGEX = /\[([\s\S]*?)\]\:/ - TEST_FAILURE_BLOCK_REGEX = /^\s+\d+\) Failure:\n([\S\s]*?)\n\n/ + + TEST_FAILURE_BLOCK_REGEX = /^\s+?\d+\)(( Failure:)?\n[\S\s]*?)\n\n/ + + SPEC_FAILURE_FORMAT = /^'[\s\S]+'\sFAILED[\s\S]*?/ + TEST_UNIT_FAILURE_FORMAT = / Failure:\n(\S+)\n?\s+?\[([\s\S]*?)\]:\n([\s\S]+)/ + def get_test_failures(log) testFailures = Array.new log.gsub(TEST_FAILURE_BLOCK_REGEX) do |text| content = $1 - - begin - test_name = content.match(TEST_NAME_REGEX).to_s - message = content.match(MESSAGE_REGEX)[1] - stack_trace = content.match(STACK_TRACE_REGEX)[1] - - testFailures << TestErrorEntry.create_failure(test_name, message, stack_trace) - rescue - # Do Nothing, Pattern does not match - end + + if content.match(TEST_UNIT_FAILURE_FORMAT) + testFailures << parse_as_test_unit(content) + elsif content.gsub("\n",'').match(SPEC_FAILURE_FORMAT) + testFailures << parse_as_rspec(content) + else + # no failures or we don't recognize it + end + end testFailures end -end \ No newline at end of file + + private + + # parse Test::Unit log message and return TestErrorEntry + def parse_as_test_unit(content) + + test_name = content.match(TEST_UNIT_FAILURE_FORMAT)[1].to_s + message = content.match(TEST_UNIT_FAILURE_FORMAT)[3] + stack_trace = content.match(TEST_UNIT_FAILURE_FORMAT)[2] + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + + # parse rspec log message and return TestErrorEntry + def parse_as_rspec(content) + + spec_arr = content.split("\n") + + test_name = spec_arr[1].match(/^'([\s\S]+)' FAILED$/)[1].to_s + message = spec_arr[2].to_s + stack_trace = spec_arr.slice(3..spec_arr.length).join("\n") + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + +end --- test/unit/test_failure_parser_test.rb (revision 181) +++ working_copy/test/unit/test_failure_parser_test.rb (working copy) @@ -77,6 +77,34 @@ 83 tests, 185 assertions, 2 failures, 0 errors EOF +LOG_OUTPUT_WITH_NO_SPEC_FAILURE = < expected but was\n<\"abc\">.", @@ -121,5 +160,15 @@ "#.force_build_if_requested - expected calls: 1, actual calls: 2", "./test/unit/polling_scheduler_test.rb:44") end + + def expected_first_spec_failure + TestErrorEntry.create_failure("Given a request to edit with a week and year the controller should return a hash of one blank row if data ! found", + "nil should be a kind of Array", + "./spec/controllers/consultant_controller_spec.rb:47:\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:36:in `run'\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:47:\n" + + "/cruisecontrol/tasks/cc_build.rake:32:\n" + + "-e:1:") + end end \ No newline at end of file _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070210/9419a780/attachment.html From averkhov at thoughtworks.com Sat Feb 10 12:21:02 2007 From: averkhov at thoughtworks.com (Alexey Verkhovsky) Date: Sat, 10 Feb 2007 11:21:02 -0600 Subject: [Cruisecontrolrb-developers] [patch] rspec support (partial) In-Reply-To: Message-ID: At the same time, we can also format the build details chunk that is displayed to the /projects dashboard. That page is going to get a lot of hits, so it should be as fast as we can make it. Alex Alexey Verkhovsky Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/10/2007 09:55 AM To rpotter at anl.gov, cruisecontrolrb-developers at rubyforge.org cc Subject Re: [Cruisecontrolrb-developers] [patch] rspec support (partial) Thanks a lot! > Is this the appropriate way to submit patches? Yes, until we have a more appropriate way (aka a bug tracker). This submission raises a question that was at the back of my mind ever since we had Test::Unit results formatter in this codebase. Custom formatting of build log is going to be in demand. How do we pluginize it? How about this solution: * Let's make formatting of build log a builder's responsibility. * This can be done by a builder plugin in response to :build_finished event Another question then arises: what do we want to do with intermediate build products? We don't really want to delete them (troubleshooting), but we also don't want to display links to them on the dashboard. I think, use hidden files for that. I.e., you start with build.log file. Format it and write the output into build.log.html (without html and body tags though, because we are displaying it on the dashboard page). It's also a good time to merge it with the changeset etc. Finally, hide the originals from the dashboard by renaming build.log to .build.log and changeset.log to .changeset.log. Thoughts? Best regards, Alex Randall Potter Sent by: cruisecontrolrb-developers-bounces at rubyforge.org 02/10/2007 12:23 AM To cruisecontrolrb-developers at rubyforge.org cc Subject [Cruisecontrolrb-developers] [patch] rspec support (partial) story: As a Dev, I would like CC.rb to display rspec failures in 'Test Failures and Errors', so that I can use rspec. Is this the appropriate way to submit patches? Thank you in advance for your time, rpotter --- app/models/test_failure_parser.rb (revision 181) +++ app/models/test_failure_parser.rb (working copy) @@ -1,25 +1,51 @@ class TestFailureParser - TEST_NAME_REGEX = /\S+/ - MESSAGE_REGEX = /\]\:\n([\s\S]+)/ - STACK_TRACE_REGEX = /\[([\s\S]*?)\]\:/ - TEST_FAILURE_BLOCK_REGEX = /^\s+\d+\) Failure:\n([\S\s]*?)\n\n/ + + TEST_FAILURE_BLOCK_REGEX = /^\s+?\d+\)(( Failure:)?\n[\S\s]*?)\n\n/ + + SPEC_FAILURE_FORMAT = /^'[\s\S]+'\sFAILED[\s\S]*?/ + TEST_UNIT_FAILURE_FORMAT = / Failure:\n(\S+)\n?\s+?\[([\s\S]*?)\]:\n([\s\S]+)/ + def get_test_failures(log) testFailures = Array.new log.gsub(TEST_FAILURE_BLOCK_REGEX) do |text| content = $1 - - begin - test_name = content.match(TEST_NAME_REGEX).to_s - message = content.match(MESSAGE_REGEX)[1] - stack_trace = content.match(STACK_TRACE_REGEX)[1] - - testFailures << TestErrorEntry.create_failure(test_name, message, stack_trace) - rescue - # Do Nothing, Pattern does not match - end + + if content.match(TEST_UNIT_FAILURE_FORMAT) + testFailures << parse_as_test_unit(content) + elsif content.gsub("\n",'').match(SPEC_FAILURE_FORMAT) + testFailures << parse_as_rspec(content) + else + # no failures or we don't recognize it + end + end testFailures end -end \ No newline at end of file + + private + + # parse Test::Unit log message and return TestErrorEntry + def parse_as_test_unit(content) + + test_name = content.match(TEST_UNIT_FAILURE_FORMAT)[1].to_s + message = content.match(TEST_UNIT_FAILURE_FORMAT)[3] + stack_trace = content.match(TEST_UNIT_FAILURE_FORMAT)[2] + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + + # parse rspec log message and return TestErrorEntry + def parse_as_rspec(content) + + spec_arr = content.split("\n") + + test_name = spec_arr[1].match(/^'([\s\S]+)' FAILED$/)[1].to_s + message = spec_arr[2].to_s + stack_trace = spec_arr.slice(3..spec_arr.length).join("\n") + + TestErrorEntry.create_failure(test_name, message, stack_trace) + end + +end --- test/unit/test_failure_parser_test.rb (revision 181) +++ working_copy/test/unit/test_failure_parser_test.rb (working copy) @@ -77,6 +77,34 @@ 83 tests, 185 assertions, 2 failures, 0 errors EOF +LOG_OUTPUT_WITH_NO_SPEC_FAILURE = < expected but was\n<\"abc\">.", @@ -121,5 +160,15 @@ "#.force_build_if_requested - expected calls: 1, actual calls: 2", "./test/unit/polling_scheduler_test.rb:44") end + + def expected_first_spec_failure + TestErrorEntry.create_failure("Given a request to edit with a week and year the controller should return a hash of one blank row if data ! found", + "nil should be a kind of Array", + "./spec/controllers/consultant_controller_spec.rb:47:\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:36:in `run'\n" + + "/cruisecontrol/builds/ccs/work/config/../lib/tasks/cruise.rake:47:\n" + + "/cruisecontrol/tasks/cc_build.rake:32:\n" + + "-e:1:") + end end \ No newline at end of file _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers _______________________________________________ Cruisecontrolrb-developers mailing list Cruisecontrolrb-developers at rubyforge.org http://rubyforge.org/mailman/listinfo/cruisecontrolrb-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/cruisecontrolrb-developers/attachments/20070210/ef7fdede/attachment-0001.html From jeremystellsmith at gmail.com Sat Feb 10 16:24:19 2007 From: jeremystellsmith at gmail.com (Jeremy Stell-Smith) Date: Sat, 10 Feb 2007 13:24:19 -0800 Subject: [Cruisecontrolrb-developers] [patch] rspec support (partial) In-Reply-To: References: <45CD72F0.4080002@anl.gov> Message-ID: I would suggest that our artifacts directory look something like this : /build-