Ayende @ Rahien

It's a girl

Rhino ETL: Targets

Well, that is two items down my list already, I have added support for targets to Rhino ETL. A target is similar in concept to a target in NAnt, it specify what needs to be run when the package run. This allows to specify how we want to run the various actions that we have.

Here is a simple example:

target default: 
Execute("CopyOrders") Execute("MoveCustomers")

As you can see, it just lists the pipelines that we want to run. By default, the target execute all the registered pipelines (or other actions) in parallel. But what happens when you want to run them in a sequence?

target default:
	sequence:
		Execute("CopyOrders")
		Execute("MoveCustomers")

Another option is that you have a dependency between two pipelines, but you don't care about the rest, you can do this as well, like this:

target withDependencies:
	copyOrders = Execute("CopyOrders")
	Execute("MoveCustomers")
	Execute("AfterCopyOrders").After(copyOrders)

Next task, transactions...

Comments

Tobin Harris
08/06/2007 07:07 AM by
Tobin Harris

That looks great. I assume you can also just do

target withDependencies:

Execute("AfterCopyOrders").After(Execute("CopyOrders"))

?

What about this also as an idea...

Execute("CopyOrders").Then(Execute("AfterCopyOrders"))

or even

Execute("CopyOrders").Then("AfterCopyOrders")

Tobin Harris
08/06/2007 07:09 AM by
Tobin Harris

Oops, overlooked your "sequence" syntax, that is very nice :-)

Comments have been closed on this topic.