Executes (long) actions in parallel, respecting dependencies between those actions
Project description
ActionTree is a Python (2.7+ and 3.3+) library to execute (long) actions in parallel, respecting dependencies between those actions. You create the graph of the actions to be executed and then call the execute method of its root, specifying how many actions must be run in parallel and if errors should stop the execution.
It’s licensed under the MIT license. It’s available on the Python package index, its documentation is hosted by Python and its source code is on GitHub.
Questions? Remarks? Bugs? Want to contribute? Open an issue!
Quick start
Install from PyPI:
$ pip install ActionTree
Import:
>>> from ActionTree import * >>> from ActionTree.stock import *
Execute some action:
>>> link = CallSubprocess(["g++", "-o", "test", "a.o", "b.o"]) >>> link.add_dependency(CallSubprocess(["g++", "-c", "doc/a.cpp", "-o", "a.o"])) >>> link.add_dependency(CallSubprocess(["g++", "-c", "doc/b.cpp", "-o", "b.o"])) >>> link.execute(jobs=2)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.