ecFlow's documentation is now on readthedocs!

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

This page contains macros or features from a plugin which requires a valid license.

You will need to contact your administrator.

Previous Up Next

 

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

  1. Type in the changes
  2. Replace the suite definition
  3. How many times will /test/f4/f5/t1 run?
  4. In ecflow_ui , try to modify the values of a repeat
      

 

  • No labels