Loading the suite

The next step is to load the suite definition to the ecflow_server, and thus inform the server about the suite structure and components. As part of loading the suite definition, the ecflow_server performs several validation steps, and only if the validation is successful will the suite definition be accepted.

There are several options to load the suite definition to the ecflow_server. If a suite definition file, such as test.def, was manually created then the CLI ecflow_client provides the --load command. If the suite definition was programmatically generated, e.g. by a Python script using the Python API, the same script can load the suite definition file.

Note

Choose only one of two methods below to avoid errors associated with loading suite definition twice.

Load the test.def using the command line interface ecflow_client:

cd $HOME/course
ecflow_client --load test.def

The suite definition will be validated and loaded into the ecflow_server. If the validation fails, the suite is not loaded.

What to do

  1. Load the suite definition file using the CLI ecflow_client

  2. (Optional) Create the $HOME/course/client.py script and suite definition file.

  3. Inspect the ecflow_server log file, and check that the suite definition was successfully loaded.

Warning

The same suite definition cannot be loaded multiple times. If a suite test already exists on the server, it can be deleted before loading the suite definition again, using the --delete command:

ecflow_client --delete /test

# find more about the --delete command with: ecflow_client --help delete

Alternatively, the --replace command can be used to re-load part or all of the suite, as as follows:

ecflow_client --replace /test test.def        # replace the suite test
ecflow_client --replace /test/t1 test.def     # replace just task t1

# find more about the --replace command with: ecflow_client --help replace