Фреймворк Python для выполнения задач и обработки зависимостей

Мне нужна структура, которая позволит мне делать следующее:

  • Разрешить динамически определять задачи (я прочитаю внешний файл конфигурации и создам задачи/работы; задача= порождать внешнюю команду, например)

  • Предоставлять способ указания зависимостей от существующих задач (например, задача A будет выполняться после завершения задачи B)

  • Возможность запускать задачи параллельно в нескольких процессах, если порядок выполнения позволяет это (т.е. нет взаимозависимости задач)

  • Разрешить задаче зависеть от какого-то внешнего события (не знаю точно, как это описать, но некоторые задачи заканчиваются и через некоторое время дадут результаты, как работа в фоновом режиме; I необходимо указать некоторые задачи, которые будут зависеть от этого фонового задания. завершено событие)

  • Поддержка отмены/отката: если одна задача не удалась, попробуйте отменить все, что было выполнено ранее (я не ожидаю, что это будет реализовано в какой-либо среде, но я думаю, стоит спросить..)

Итак, очевидно, что это более или менее похоже на систему сборки, но я не могу найти что-то, что позволило бы мне динамически создавать задачи, большинство вещей, которые мне кажутся, уже определены в " Makefile".

Есть идеи?

11
задан Unknown 12 March 2012 в 09:58
поделиться