Uopdating readme
This commit is contained in:
parent
bbce4c208c
commit
8c29665962
@@ -1,28 +1,48 @@
|
|||||||
Waterfall
|
# Waterfall
|
||||||
=========
|
|
||||||
|
|
||||||
Waterfall is a declarative task execution framework.
|
Waterfall is a declarative task execution framework.
|
||||||
Why Another Execution Framework
|
|
||||||
===============================
|
# Why Another Execution Framework
|
||||||
|
|
||||||
There are many, many execution frameworks out there that support defining
|
There are many, many execution frameworks out there that support defining
|
||||||
tasks with inter-task dependencies. Most of them only partially include
|
tasks with inter-task dependencies. Most of them only partially include
|
||||||
scheduling in their design.
|
scheduling in their design.
|
||||||
|
|
||||||
Overview
|
# Building and Running
|
||||||
--------
|
|
||||||
|
|
||||||
Resources
|
```bash
|
||||||
=========
|
cargo build
|
||||||
|
```
|
||||||
|
|
||||||
|
# Overview
|
||||||
|
|
||||||
|
## Example
|
||||||
|
|
||||||
|
## Resources
|
||||||
|
|
||||||
Resources are at the heart of Waterfall. They are simple things: labels
|
Resources are at the heart of Waterfall. They are simple things: labels
|
||||||
with an associated set of time intervals. Tasks produce resources for
|
with an associated set of time intervals. Tasks produce resources for
|
||||||
given intervals.
|
given intervals.
|
||||||
|
|
||||||
Tasks
|
## Tasks
|
||||||
=====
|
|
||||||
|
|
||||||
Tasks are commands that run on a set schedule. Each task produces one or
|
Tasks are commands that run on a set schedule. Each task produces one or
|
||||||
more `Resource`. The run schedule naturally breaks up the timeline into
|
more `Resource`. The run schedule naturally breaks up the timeline into
|
||||||
intervals. When a task runs at time $T_n$, it will make make each resource
|
intervals. When a task runs at time `T_n`, it will make make each resource
|
||||||
it provides available over the interval $(T_{n-1},T]$.
|
it provides available over the interval `(T_{n-1},T]`.
|
||||||
|
|
||||||
|
### Commands
|
||||||
|
|
||||||
|
A task has three commands defined:
|
||||||
|
|
||||||
|
- **check** - Command used to run an out-of-band verification of the data. Should have no side effects.
|
||||||
|
- **up** - Command run to create resources.
|
||||||
|
- **down** - Command run when removing resources.
|
||||||
|
|
||||||
|
### Dependencies
|
||||||
|
|
||||||
|
Tasks will run at their scheduled time (or immediately if their scheduled time
|
||||||
|
has passed already).
|
||||||
|
|
||||||
|
It's possible to define additional constraints on launching, though. Some tasks
|
||||||
|
may need resources produced by other tasks before it can start.
|
||||||
|
|||||||
Reference in New Issue
Block a user