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 class="section" id="defining-the-first-task"> <span id="defining-a-task"></span><span id="index-0"></span> <div class="line-block"> <div class="line">Next, we need to write the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em class="xref std std-term">ecf script</em></a> for the task <strong>t1</strong>.</div> <div class="line">By default ecFlow expects files to be in a directory structure below ECF_HOME</div> <div class="line">that reflect the hierarchy of the suites. The <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-task"><em class="xref std std-term">task</em></a> <strong>t1</strong> being in the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-suite"><em class="xref std std-term">suite</em></a> test,</div> <div class="line">the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em class="xref std std-term">ecf script</em></a> for the task <strong>t1</strong> must be in a sub-directory test.</div> </div> <ul> <li><p class="first">In ECF_HOME, create a directory test:</p> <div class="highlight-python"><pre>> mkdir test</pre> </div> </li> <li><p class="first">In test, create a file <tt class="file docutils literal"><span class="pre">t1.ecf</span></tt> with the following contents:</p> <div class="highlight-python"><pre>%include "../head.h" echo "I am part of a suite that lives in %ECF_HOME%" %include "../tail.h"</pre> </div> </li> </ul> <div class="section" id="job-creation"> <span id="id1"></span><h2>Job creation<a class="headerlink" href="#job-creation" title="Permalink to this headline">¶</a></h2> <div class="line-block"> <div class="line">Before submitting the task, the server will transform the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em class="xref std std-term">ecf script</em></a> to a <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-job-file"><em class="xref std std-term">job file</em></a></div> <div class="line">This process is known as <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-job-creation"><em class="xref std std-term">job creation</em></a>.</div> </div> <div class="line-block"> <div class="line">This involves locating the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em class="xref std std-term">ecf script</em></a> on disk, and then <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-pre-processing"><em class="xref std std-term">pre-processing</em></a> the</div> <div class="line"><a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-directives"><em class="xref std std-term">directives</em></a>. This process includes performing <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-variable-substitution"><em class="xref std std-term">variable substitution</em></a>.</div> </div> <div class="line-block"> <div class="line">This will create a file with a ‘.job’ extension.</div> <div class="line">This is the script that <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflow-server"><em class="xref std std-term">ecflow_server</em></a> will submit to your system.</div> </div> <p>In our case:</p> <ul> <li><p class="first">%include ”../head.h” will be substituted by the content of the file <a class="reference internal" href="/wiki/display/ECFLOW/Understanding+Includes#head-h"><em>head.h</em></a>.</p> <div class="line-block"> <div class="line">Note that the file name is given relatively to the file <tt class="file docutils literal"><span class="pre">t1.ecf</span></tt>,</div> <div class="line">i.e. in the directory above the one containing <tt class="file docutils literal"><span class="pre">t1.ecf</span></tt></div> </div> </li> <li><p class="first">%ECF_HOME% will be substituted by the value of the variable ECF_HOME</p> </li> <li><p class="first">%include <em>”../tail.h”</em> will be substituted by the content of the file <a class="reference internal" href="/wiki/display/ECFLOW/Understanding+Includes#tail-h"><em>tail.h</em></a></p> </li> </ul> <p><strong>What to do:</strong></p> <ol class="arabic simple"> <li>Create the <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecf-script"><em class="xref std std-term">ecf script</em></a> <tt class="file docutils literal"><span class="pre">t1.ecf</span></tt> in $HOME/course/test directory</li> </ol> </div> </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 | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|