/waluigi

Ruby tasks running in luigi

Primary LanguageRuby

Waluigi

Gem Version PyPI version

With the power of pycall and some metaprogramming magic is possible to facade a ruby class into a luigi task. Not everything works, but looks promising.

Instalation

Waluigi is divided into 2 packages, a ruby gem and a python egg. You need to install both in order to be able to use waluigi.

gem install waluigi
pip install waluigi-facade

Usage

Write a Tasksfile like the one provided here, then use the waluigi binary for running the tasks. The binary will take the arguments and will pass them verbatim to luigi.

For example:

waluigi MyTask --local-scheduler

What works

  • Executing the run method
  • Declaring outputs defined in Python code
  • Declaring requirements programmed either in Ruby or Python
  • Parameters declaration in Ruby
  • Getting information from the Python side (output(), input(), parameters, etc)

What doesn't

  • Utility classes: WrapperTask, ExternalTask, etc