The ecflow_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 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 beginning the suite can also be done with the Client Server API.
Modify your client.py file and then run it.
$HOME/course/client.py
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