Adding another task

To add another task to the existing suite test perform the following steps:

  1. Modify the suite definition file to include the new task.

  2. Create a new ecf script for the new task.

  3. Reload and begin the modified suite definition into the ecflow_server.

The following shows the two methods of reloading the modified suite definition into the ecflow_server. The options presented are:

It is good practice to suspend a suite before starting to update any part of it.

This avoids the suite automatically starting before the complete set of changes is complete.

Use the ecFlowUI to suspend the test suite, or run the following command to do the same using the CLI ecflow_client:

ecflow_client --suspend /test

Update the suite definition file to add the new task t2.

# Definition of the suite test
suite test
   edit ECF_HOME "{{HOME}}/course"
   task t1
   task t2
endsuite

Note

As before, replace {{HOME}}/course to point at the tutorial directory.

Load the modified suite definition into the ecflow_server using the CLI ecflow_client:

# Ensure suite 'test' doesn't exist by deleting all suites
ecflow_client --delete _all_

# Load the modified suite definition
ecflow_client --load test.def

# or, equivalently, replace the suite if it already exists
ecflow_client --replace /test test.def     # replace the whole suite

After loading the updated suite definition, begin the suite:

# Begin the suite
ecflow_client --begin test

What to do

  1. Suspend the test suite, either using the ecFlowUI or the CLI ecflow_client.

  2. Update the suite definition file by adding a new task t2.

  3. Create ecf script file, named t2.ecf by copying t1.ecf.

  4. (Optional) Update the Python scripts test.py and client.py (as shown above).

  5. Replace the test suite using the CLI ecflow_client.

  6. Resume the the suite using ecFlowUI or the CLI ecflow_client.

  7. Observe the parallel execution of the tasks in ecFlowUI.