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
>
>