如何在Python Luigi任务管理器中表示子流?

时间:2017-12-28 16:09:19

标签: python python-3.x luigi

假设我有流A-> B。该流程的用户需要B.假设我有一个需要B的任务C,但我希望D在流程A-> B之前发生。我如何在Luigi

中执行此操作

1 个答案:

答案 0 :(得分:0)

一种解决方案是将C的要求传递给子流A-> B:

import luigi

class A(luigi.Task):
  precedes = luigi.Parameter()

  def requires(self):
     return self.precedes

class B(luigi.Task):
  precedes = luigi.Parameter()

  def requires(self):
     return A(precedes = self.precedes)

class D(luigi.Task):
  pass

class C(luigi.Task):
  def requires(self):
      return B(precedes = D())