Sometimes tasks don't run as expected, as we need to get notification when they are late.
For this we use the late attribute. The late attribute can be add to a suite/family however and it will be inherited by the task.
Note: only a task can be late.
Ecf Script
We will add a new task /test/f6/t1.
Create new ecf script file $HOME/course/test/f6/t1.ecf to use these variables.
%include <head.h> sleep %SLEEP% %include <tail.h>
Text
Let us modify the suite definition file again
# Definition of the suite test. suite test edit ECF_INCLUDE "$HOME/course" edit ECF_HOME "$HOME/course" family f6 edit SLEEP 120 late endfamily endfamily endsuite
Python
#!/usr/bin/env python2.7
import os
import ecflow
def create_family_f6():
f6 = ecflow.Family("f6")
f6.add_variable("SLEEP", 120)
t1 = f6.add_task("t1")
t1.add_late( ecflow.RepeatDate("DATE", 20101230, 20110105) )
return f6
print "Creating suite definition"
defs = ecflow.Defs()
suite = defs.add_suite("test")
suite.add_variable("ECF_INCLUDE", os.path.join(os.getenv("HOME"), "course"))
suite.add_variable("ECF_HOME", os.path.join(os.getenv("HOME"), "course"))
suite.add_family( create_family_f6() )
print defs
print "Checking job creation: .ecf -> .job0"
print defs.check_job_creation()
print "Saving definition to file 'test.def'"
defs.save_as_defs("test.def")
What to do
- Type in the changes
- Replace the suite definition
- How many times will /test/f4/f5/t1 run?
- In ecflow_ui , try to modify the values of a repeat