Starting the suite
The ecf_start.sh script will automatically set up and start your ecflow_server.
If you started an ecFlow manually then your server will start in a halted state. In this case you you will have to “restart” your server before you can use it. In a halted state the server will not schedule any tasks.
Text
To check the status of the server, type the following at the unix prompt:
ecflow_client --stats
Examine the output. If the ecflow_server is halted you would restart with:
ecflow_client --restart
Once the ecflow_server is running you have to start the suite by typing:
ecflow_client --begin=test
Python
Restarting and begin’ing the suite can also be done with the Python API. Modify your client.py file and then run it.
import ecflow
try:
ci = ecflow.Client()
ci.sync_local() # get the defs from the server, and place on ci
defs = ci.get_defs() # retrieve the defs from ci
if len(defs) == 0:
print("No suites in server, loading defs from disk")
ci.load("test.def")
print("Restarting the server. This starts job scheduling")
ci.restart_server()
else:
print("read definition from disk and replace on the server")
ci.replace("/test", "test.def")
print("Begin the suite named 'test'")
ci.begin_suite("test")
except RuntimeError as e:
print("Failed:", e)
What to do
Restart the ecflow_server
Begin the suite,
python3 client.py