For my purposes, I would need to describe one job, or one batch in various configuration files. And when all the files are loaded process the job/batch.
It seems to me the functionality doesn't exist.
I would like to know if it is the best way to do it. I would also like to know in case I do the functionality if you want it.
Thanks
- -- Fabien Carrion
() Campagne du ruban ASCII -- Contre les mails en html /\ contre les pieces-jointes Microsoft Web: http://fabien.carrion.free.fr/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> For my purposes, I would need to describe one job, or one batch in > various configuration files. And when all the files are loaded process the job/batch. > It seems to me the functionality doesn't exist.
I'm not sure to understand your needs here - can you describe your use case a little bit more so we can try to help ?
Right now we have: ETL::Engine.process("configfile.ctl")
And it parse the file configfile.ctl and it execute it.
I would need something like: engine = ETL::Engine.new engine.load("configfile1.ctl") engine.load("configfile2.ctl") engine.load("configfile3.ctl") engine.process
And it would parse all the sources/processors/destinations in configfile1.ctl, configfile2.ctl, configfile3.ctl and process all of them
This would let me use various configuration files as bricks for a bigger job.
Is it more understandable?
Thanks
On 08/02/2010 12:22 PM, Thibaut Barr re wrote:
> Hello Fabien,
>> For my purposes, I would need to describe one job, or one batch in >> various configuration files. And when all the files are loaded process the job/batch. >> It seems to me the functionality doesn't exist.
> I'm not sure to understand your needs here - can you describe your use > case a little bit more so we can try to help ?
> cheers,
> -- Thibaut
- -- Fabien Carrion
() Campagne du ruban ASCII -- Contre les mails en html /\ contre les pieces-jointes Microsoft Web: http://fabien.carrion.free.fr/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
That's what .ebf files are for, although I can't recall if they support delayed execution. If not, then I'd suggest that's where the feature needs to be implemented.
-Anthony
On Mon, Aug 2, 2010 at 1:50 PM, Fabien Carrion <fabien.carr...@gmail.com>wrote:
> >> For my purposes, I would need to describe one job, or one batch in > >> various configuration files. And when all the files are loaded process > the job/batch. > >> It seems to me the functionality doesn't exist.
> > I'm not sure to understand your needs here - can you describe your use > > case a little bit more so we can try to help ?
> > cheers,
> > -- Thibaut
> - -- > Fabien Carrion
> () Campagne du ruban ASCII -- Contre les mails en html > /\ contre les pieces-jointes Microsoft > Web: http://fabien.carrion.free.fr/ > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> -- > You received this message because you are subscribed to the Google Groups > "ActiveWarehouse Discuss" group. > To post to this group, send email to > activewarehouse-discuss@googlegroups.com. > To unsubscribe from this group, send email to > activewarehouse-discuss+unsubscribe@googlegroups.com<activewarehouse-discus s%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/activewarehouse-discuss?hl=en.
-- GMU/IT d- s: a33 C++(++++)$ UL@ P--- L+(++) !E W+++$ !N o? K? w--- !O M++ V PS+ PE Y PGP t+ !5 X- R tv b++ DI+ D++ G- e++ h---- r+++ y++++**
I second what Anthony said: you can use an .ebf file to gather the sequence of your .ctl files, eg:
require 'common'
run 'first.ctl' run 'second.ctl' unless some_condition run 'third.ctl'
Here are a few additional tips: - you can share common code (any bits of Ruby, really) using a regular require from inside your .ctl - you can load whatever is needed, including YAML configuration, ENV variables etc - if you have one .ctl with a large setup you'd like to factor our, you can do this:
Just the same way, you can extract a group of transform like:
transform :xxx, some_params... transform :yyy
to
def macro_transform(some_params) transform :xxx, some_params transform :yy end
which makes it easy to reuse a large block (eg: cleaning + lookup operations for instance) accross multiple .ctl files.
Keep in mind that the source/transform/destination etc calls really are "registrations" rather than "executions". Once the .ctl file is fully loaded (and all the .ctl file has been parsed), the execution will start row by row, more or less.
I hope these few tips will help you cover your need - given that you can fallback to Ruby by design (on purpose), it's fairly easy to accomplish all the glue code needed here.
> I second what Anthony said: you can use an .ebf file to gather the > sequence of your .ctl files, eg:
> require 'common'
> run 'first.ctl' > run 'second.ctl' unless some_condition > run 'third.ctl'
> Here are a few additional tips: > - you can share common code (any bits of Ruby, really) using a regular > require from inside your .ctl > - you can load whatever is needed, including YAML configuration, ENV > variables etc > - if you have one .ctl with a large setup you'd like to factor our, you > can do this:
> which makes it easy to reuse a large block (eg: cleaning + lookup > operations for instance) accross multiple .ctl files.
> Keep in mind that the source/transform/destination etc calls really are > "registrations" rather than "executions". Once the .ctl file is fully > loaded (and all the .ctl file has been parsed), the execution will start > row by row, more or less.
> I hope these few tips will help you cover your need - given that you can > fallback to Ruby by design (on purpose), it's fairly easy to accomplish > all the glue code needed here.
> -- Thibaut
> -- > You received this message because you are subscribed to the Google > Groups "ActiveWarehouse Discuss" group. > To post to this group, send email to > activewarehouse-discuss@googlegroups.com. > To unsubscribe from this group, send email to > activewarehouse-discuss+unsubscribe@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/activewarehouse-discuss?hl=en.
- -- Fabien Carrion
() Campagne du ruban ASCII -- Contre les mails en html /\ contre les pieces-jointes Microsoft Web: http://fabien.carrion.free.fr/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/