Task lifetime stages

1) Construction

Tasks are created and imported into the ApplicationContext . Every .rkd directory context is parsed into ApplicationContext , then all contexts are merged into an unified ApplicationContext .

2) Compilation

Unified ApplicationContext is compiled, compilation does two things:

  1. Resolving all Pipelines into Groups of resolved Tasks

  2. Executing compile() on all defined Tasks in ApplicationContext , regardless if they are called

3) Configuration

configure() method is triggered on each Task that is scheduled to be executed.

4) Execution

execute() method is triggered on each Task that is scheduled to be executed.

5) Teardown

To be done. Not implemented yet.