Each of the individual tasks of a build (compile, test, copy, move, gendocs) can be written as individual objects. Those objects must have a "call" method defined. You then can add them to an overall workflow (which could be defined in xml) and create the dependencies between them. If any of the tasks throw an exception of any kind that task fails and any dependent tasks are avoided. When you call flow.start() you can optionally specify dynamic parameters. flow.start(configObj). This might allow you to dynamically pass in the name of the file to copy, or the directory of the output, etc. I have briefly talked with Phil Tomson about integrating his Distributor with Torrent for distributed workflows. I am trying to work on a server for the Torrent library so flows can be scheduled, executed over soap, and eventually I hope distributed flows will be supported. -jason ----- Original Message ----- From: "Christian Boos" <cboos / bct-technology.com> To: "ruby-talk ML" <ruby-talk / ruby-lang.org> Sent: Thursday, December 20, 2001 2:19 PM Subject: [ruby-talk:29109] Re: Ruby 'make' replacement (Re: stderr from external process?) > Hello Jason, > > Thanks for changing your license to the Ruby license. > "Torrent" definitely looks interesting for a generalized build system. > I don't see yet the "granularity" where I could better benefit from it. > > For distributed builds and testing, it would be a must. I guess it should > be possible to combine Torrent with drb somehow? > > Anyhow, I will look deeper into it. > > -- Christian > >