The process of job creation can be checked before the suite definition
is loaded into the ecflow_server. The following checks are done:
- Locating ecf script files, corresponding to the task in the suite definition
- Performing pre-processing
When the suite definition is large and has many ecf script this
checking can save a lot of time.
Checking is done using ecflow.Defs.check_job_creation
#!/usr/bin/env python2.5
import os
import ecflow
defs = ecflow.Defs()
suite = defs.add_suite("test")
suite.add_variable("ECF_HOME",os.getenv("HOME") + "/course")
suite.add_task("t1")
#
# Check .ecf --> .job
#
job_ctrl = ecflow.JobCreationCtrl()
defs.check_job_creation(job_ctrl)
print job_ctrl.get_error_msg()
# We can assert, so that we only progress, once all job creation works
# assert len(job_ctrl.get_error_msg()) == 0, job_ctrl.get_error_msg()
What to do:
- Add job creation checking.