The job file is the actual file that ecFlow will submit to the system. Starting with the following ecFlow file:
task.ecf
%manual
OPERATORS: Set the task complete and report next day
%end
%include <head.h>
echo do some work
sleep %SLEEPTIME%
echo end of job
%include <end.h>
This uses the header files head.h, end.h for example as given earlier and with SLEEPTIME defined as having a value 60.
After pre-processing the job-file will include the header files and variables and exclude comments and man pages. It would look something like:
task.job1
#!/bin/ksh
ECF_NAME=/suite/family/task ECF_NODE=localhost ECF_PASS=xYz12AbC ECF_PORT=3141 ECF_TRYNO=1
export ECF_NAME ECF_NODE ECF_PASS ECF_TRYNO ECF_PORT ERROR() { echo ERROR ; ecflow_client –-abort=trap; exit 1 ; } trap ERROR 0 trap '{ echo "Killed by a signal"; ERROR ; }' 1 2 3 4 5 6 7 8 10 12 13 15 # list using kill -l or man kill
set –e ecflow_client --init=$$
echo do some work sleep 60 echo end of job
ecflow_client --complete
trap 0
exit