代码之家  ›  专栏  ›  技术社区  ›  KansaiRobot

如果下一个文件已经完成,则luigi任务失败

  •  0
  • KansaiRobot  · 技术社区  · 4 年前

    我有一个用Luigi构建的管道,其中一些任务需要其他任务,每个任务都会创建一个文件。 类似于:

    TaskA-------->TaskB---------> TaskC-------->TaskD
    (fileA)      (fileB)         (fileC)       (fileD)
    

    我第一次运行管道时,一切都运行良好并被创建。

    如果我再次运行管道,则由于TaskD已经完成,因此不会运行任何内容。

    如果我手动删除fileB(由TaskB创建),我预计它会被重新创建,其他所有东西都会运行,但管道会失败。

    是的,文件B被重新创建,但TaskC失败,错误消息显示文件C已经存在。

    是否有办法重新创建后续文件?或者覆盖fileC?

    0 回复  |  直到 4 年前
        1
  •  0
  •   iHowell    4 年前

    你所描述的正是Luigi的运行方式。当您指定要运行的任务时(在 luigi.build 或者cli),您可以指定需要完成哪些任务,以便Luigi认为其工作已经完成。Luigi不会关心你的管道,除非你告诉它。一种方法是通知Luigi你关心的所有任务,在这种情况下,这些任务似乎是任务B和任务D。因此,它看起来像:

    luigi.build([TaskD(...), TaskB(...)])