Declaring Task Dependencies¶
Prepending Tasks¶
Uranium provides a declarative task dependency system through task_requires:
from uranium import task_requires
def main(build):
print("main was")
# this ensures main is run first, during
# an execution.
@task_requires("main")
def test(build):
print("test was run")
# a list can be passed in. In that case,
# each dependency is executed in the order
# it appears in the list.
#
# notice that a string with the task name,
# or the task itself can be passed in.
@task_requires(["main", test])
def build_docs(build):
print("main was")
This relationship can be created after the fact by add_requires:
# test requires main
build.tasks.prepend("test", "main")
Executing Tasks After an Existing Task¶
# ensures test executes after main
build.tasks.append("main", "test")