-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add the ability to specify services #77
Comments
@jsemler has also requested this use case. |
To specify services, we have two options. We could specify a study step with a There are three parts to this issue:
|
After some discussion with @dinatale2, he and I think that the services should be placed into a new section within a study specification. That section would look as follows:
These would be spun up separately ahead of executing the study section with Maestro exiting if these services experience an abnormal start up. It's also a good way to introduce a new Another issue that @dinatale2 and I flagged with the implementation is the interaction with services failing mid-study (or reaching wall clock time, etc.). If a study is running and expects the service to be running, there is the corner case that it may not be because the conductor has not restarted the service yet (if a restart was specified). We came to a loose conclusion that this case is outside of Maestro's scope. Maestro is only responsible for launching the services and making sure that they are restarted according to the conductors refresh cycle. Codes relying on a service should handle the case when there is a lapse in service availability. @jsemler -- Feel free to chime in if you have any thoughts on this issue. |
@FrankD412 Another thought -- If a service fails and cannot be restarted for some reason, should Maestro cancel/fail the running study? That would make Maestro a "responsible user" of computing resources and free them up for another study. |
The service section seems reasonable to me. I think it would also be helpful to have a way to specify a post step to run before cancelling the study. |
This conversation has died down and I think generally the notion is that Maestro may not need to be responsible for services. A solid division of responsibility is the assumption that persistent services are already running. That means that an individual study remains simple. |
We should support a way to launch services, where a service is a command that wants to be spun up before executing the steps in a study. These services can be spun down once the study is determined to have completed (either a failure or success condition).
The text was updated successfully, but these errors were encountered: