jakarta-cactus-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Lenz <cml...@gmx.de>
Subject Re: Starting/Stopping Resin with Ant
Date Wed, 25 Feb 2004 12:26:13 GMT
Am 25.02.2004 um 11:07 schrieb Vincent Massol:
>> -----Original Message-----
>> From: Christopher Lenz [mailto:cmlenz@gmx.de]
>> Sent: 25 February 2004 10:56
>> To: Cactus Users List
>> Subject: Re: Starting/Stopping Resin with Ant
>>
>> In that case I'd suggest extending <runservertests> so that it would
>> accept a nested <containerset>, similar to <cactus>. This approach
>> would be much cleaner than providing separate <startcontainer> and
>> <stopcontainer> tasks IMHO.
>
> Except that :
> 1/ we don't need/want a containerset, just a single container (unless
> you wish to start several containers in parallel).

<containerset> is simply the data type, basically the main interface 
through which you access the functionality provider by the container 
package from an Ant build file. There is currently no such thing as a 
container outside of a containerset, although we could probably provide 
support for that for Ant 1.6 build files (while still working in 1.5).

Second, multiple containers would not be run parallel, but 
sequentially. The nested "test" task would be repeated for every 
container.

> 2/ it's not about run server tests. It's simply about starting a
> container. Thus the name is misleading. I'd much prefer a new task.

The name was always misleading, as you can use <runservertests> for 
everything you like. Still, it is mostly used for tests, because the 
container is shut down after whatever you wanted to do is finished, and 
that functionality is not very useful in non-test related contexts. I'm 
not against changing the name, however.

>> That can get messy though, because the task basically gets two
>> different modes: the first is using the classic start/stop hooks, the
>> second mode would be based on container sets. Note that the first mode
>> could be dropped, because a generic container inside a container set
>> supports the same semantics, but simply dropping the start/stop hooks
>> would break backward compatibility. I recall working on this, but gave
>> up because I didn't need it myself.
>>
>> This would be simpler if we'd simply make this a new task
>> (<runcontainer> or <incontainer>?).
>
> that's what I'm proposing with 
> startcontainer/stopcontainer/runcontainer
> I think.

<runcontainer> is okay. As I said before, I'm not in favor of separate 
start/stop tasks because that is soooo procedural (yuck ;-) ). We want 
a more declarative syntax, like:

run tomcat4x so I can:
   run all my integration unit tests
   run all my functional tests based on canoo webtest or whatever

So how about:

   <runcontainer>
     <containerset><tomcat4x .../></containerset>
     <sequential>
       <!-- do whatever you like here, the container is running -->
     </sequential>
   </runcontainer>

In Ant 1.6 we drop the <containerset>:

   <runcontainer>
     <tomcat4x .../>
     <sequential>
       <!-- do whatever you like here, the container is running -->
     </sequential>
   </runcontainer>

Basically, we can also drop the <sequential> block, but I think it is 
nice in keeping the actual tasks together in a block.

Does that sound okay?
Chris
--
Christopher Lenz
/=/ cmlenz at gmx.de


Mime
View raw message