Page History
Horizontal Navigation Bar | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
By default ecFlow expects files to be in a directory structure below ECF_HOME
- In ECF_HOME, create a directory test:
Code Block | ||
---|---|---|
| ||
mkdir test |
- In test directory, create a file t1.ecf with the following contents:
Code Block | ||||
---|---|---|---|---|
| ||||
%include | ||||
HTML | ||||
<div id="defining-the-first-task"> <span id="defining-a-task"></span><span id="index-0"></span> <p>Next, we need to write the <a href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em >ecf script</em></a> for the task <strong>t1</strong>. By default ECF expects files to be in a directory structure below ECF_HOME that reflect the hierarchy of the suites. The <a href="/wiki/display/ECFLOW/Glossary#term-task"><em >task</em></a> <strong>t1</strong> being in the <a href="/wiki/display/ECFLOW/Glossary#term-suite"><em >suite</em></a> test, the <a href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em >ecf script</em></a> for the task <strong>t1</strong> must be in a sub-directory test.</p> <ul> <li><p >In ECF_HOME, create a directory test:</p> <div ><pre>> mkdir test</pre> </div> </li> <li><p >In test, create a file name <tt ><span >t1.ecf</span></tt> with the following contents:</p> <div ><pre>%include "../head.h" echo "I am part of a suite that lives in %ECF_HOME%" %include "../tail.h"</pre> </div> </li> </ul> <p>Although similar an <a href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em >ecf script</em></a> is not a unix script. It contains <a href="/wiki/display/ECFLOW/Glossary#term-pre-processing"><em >pre-processing</em></a> <a href="/wiki/display/ECFLOW/Glossary#term-directives"><em >directives</em></a>. Those <a href="/wiki/display/ECFLOW/Glossary#term-directives"><em >directives</em></a> are specified using the character %. Before submitting the task, the ECF will scan the script and substitute the following strings:</p> <ul > <li>%include ”../head.h” will be substituted by the content of the file <a href="/wiki/display/ECFLOW/Getting+Started#head-h"><em>head.h</em></a>. Note that the file name is given relatively to the file <tt ><span >t1.ecf</span></tt>, i.e. in the directory above the one containing <tt ><span >t1.ecf</span></tt></li> <li>%ECF_HOME% will be substituted by the value of the ECF variable ECF_HOME</li> <li>%include <em>”../tail.h”</em> will be substituted by the content of the file <a href="/wiki/display/ECFLOW/Getting+Started#tail-h"><em>tail.h</em></a></li> </ul> <p>The output of <a href="/wiki/display/ECFLOW/Glossary#term-job-creation"><em >job creation</em></a> is known as the <a href="/wiki/display/ECFLOW/Glossary#term-job-file"><em >job file</em></a>, and is usually a unix script, although not necessarily. This is the script that ECF will submit to your system.</p> <p>The workings of the files <a href="/wiki/display/ECFLOW/Getting+Started#head-h"><em>head.h</em></a> and <a href="/wiki/display/ECFLOW/Getting+Started#tail-h"><em>tail.h</em></a> are described inline. head.h contains code to set-up the job environment so that it can work with ECF and also includes the required error trapping to report any script errors to the ECF server. The file <a href="/wiki/display/ECFLOW/Getting+Started#tail-h"><em>tail.h</em></a> contains clean up code.</p> <p>What to do:</p> <ol > <li>Type in the <a href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em >ecf script</em></a> <tt ><span >t1.ecf</span></tt></li> </ol> </div> |
Job creation
This will create a file with a ‘.job’ extension.
In our case:
%include ”../head.h” will be substituted by the content of the file head.h.
Note that the file name is given relatively to the file t1.ecf,i.e. in the directory above the one containing t1.ecf%ECF_HOME% will be substituted by the value of the variable ECF_HOME
%include ”../tail.h” will be substituted by the content of the file tail.h
What to do
- Create the ecf script t1.ecf in $HOME/course/test directory
Horizontal Navigation Bar | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|