Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Variables are inherited from the parent node.
If a variable is redefined lower in the tree, it is said to be overridden.
In this case the new definition is the one being used.
It is possible to override generated variables.
This is not recommended and you should understand all the consequences
if you decide to do so.

Text

Code Block
# Definition of the suite test.
suite test
   edit ECF_INCLUDE "$HOME/course"   # replace '$HOME' with the path to your home directory
   edit ECF_HOME    "$HOME/course"
   family f1
      edit SLEEP 20
      task t1
      task t2
   endfamily
endsuite

 

Python

#!/usr/bin/env python2.7
import os
import ecflow  

def create_family_f1():
    f1 = ecflow.Family("f1")
    f1.add_variable("SLEEP", 20)
    f1.add_task("t1")
    f1.add_task("t2")
    return f1         
      
print "Creating suite definition"   
defs = ecflow.Defs()
suite = defs.add_suite("test")
suite.add_variable("ECF_INCLUDE", os.getenv("HOME") + "/course")
suite.add_variable("ECF_HOME",    os.getenv("HOME") + "/course")

suite.add_family( create_family_f1() )
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")

...