logo       

Combining Builders, Tasks and Publishers?: msg#00016

windows.dotnet.ccnet.devel

Subject: Combining Builders, Tasks and Publishers?

Hi,

This is for after 0.7 final is released, but I've been thinking about something.

Instead of having 'builders', 'tasks' and 'publishers' as separate
concepts, why not combine them? E.g. Instead of:

<build type="nant">
....
</build>
<tasks>
<merge>
<files>

<file>c:\fromcvs\myrepo\myproject\build\test\unit-test-results.xml</file>
</files>
</merge>
</tasks>
<publishers>
<xmllogger />
</publishers>

Have:

<tasks>
<build>
<nant .... />
<merge ..../>
</build>
<postbuild>
<xmllogger />
</postbuild>
</tasks>

The difference between 'build' and 'postbuild' being that a
'postbuild' task can't fail the build.

Benefits:
- Simpler configuration
- Multiple builders possible for 1 project
- Can run tasks before project (e.g. simple execs to do SCM checkout
for those SCMs that don't have autoGetSource)
- Possibility to use current 'tasks' as postbuild tasks
- Possibility to use current 'publishers' as tasks
- Simpler implementation (1 interface instead of 3)

Drawbacks:
- May encourage complicated workflow that should be delegated to a build script
- Breaking change to configuration

I think this has been discussed before but I'd like to put it forward
as a change for 0.8. I'm sure Owen at least will have an opinion since
it means dumping the event stuff on publishers! In my mind, we can add
eventing later, and we may have an event concept that runs a task.

Mike

--
mike roberts | http://mikeroberts.thoughtworks.net/ |
http://www.thoughtworks.com/


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise