First we need a simple workflow.
[scheduling]
initial cycle point = 20130808T00
final cycle point = 20130809T00
[[graph]]
R1 = "prep => foo"
PT12H = "foo[-PT12H] => foo => bar"
[runtime]
[[root]]
script="sleep 2"
This is a Cylc Flow workflow. Compatible with versions 7 and 8 (not released ATOW). It has three tasks:
prep, foo, and bar.
The first time it runs (R1) the workflow will start action prep, that will trigger foo.
Then the workflow definition also specifies that every 12 hours (PT12H) the previous foo (foo[-PT12H])
task will trigger the next foo, that will trigger the bar task.
Visualizing the workflow is easier.
It will start running immediately when the user calls cylc run --no-detach five, or when it is
started via the GUI (cylc gui five).
It will execute the first task, then the next, then the next, and so it goes. In a cyclic way.
Each task has the same command (script) that simply sleeps for 2 seconds.
When it reaches the end, it will stop.

