-
Notifications
You must be signed in to change notification settings - Fork 313
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
Provision, start, stop subcommands #722
Conversation
First swing at provision, start, stop functions.
Report trial-id, pid, container_id regardless.
@drawlerr I took an initial pass and have the following top level comments:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I left some initial comments.
I didn't realize this was a requirement of the "stop" subcommand. Sounds maybe like a separate "cleanup" command?
It does, but it should probably be a list instead of a single element. I'll fix it.
This is tricky. I used quiet mode (--quiet) to suppress all output except for the "forced" output of the UUID. (see integration-test.sh for example usage) |
Unrelated, but mentioned it since this PR touches
This can be fixed by e.g. patching the afforementioned function e.g. with: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I took another pass and left a few more comments re: use of --node-ips
and how it translates to all_node_ips
.
"list": dispatch_list, | ||
"race": race, | ||
"download": mechanic.download, | ||
"provision": mechanic.provision, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we want to document the provision
and start
/ stop
commands either in this PR or in a separate PR. @danielmitterdorfer WDYT?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PRs should be self-contained thus I'd opt for documenting it in this PR.
Docs should always go along with the code changes, i.e. they should be included in this PR not in a separate one. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did a first pass and left some comments and suggestions. On a high level I think the following needs to be addressed:
- Handling of telemetry devices
- Only allowing to provision one node
I think we also need an option to cleanup an installation on termination (i.e. in the stop
subcommand). IMHO this does not need to be a separate subcommand.
I also spotted a lot of unrelated changes (like reformattings + it seems to be based on a yet unmerged PR) which made the PR harder to review and I suggest that we move such changes in the future to dedicated PRs.
"list": dispatch_list, | ||
"race": race, | ||
"download": mechanic.download, | ||
"provision": mechanic.provision, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PRs should be self-contained thus I'd opt for documenting it in this PR.
action="store_true", | ||
default=False | ||
) | ||
for p in [start_parser, stop_parser]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is missing support to enable telemetry devices.
Thanks so much for working on this PR! As we've discussed offline earlier, there are too many changes that we need to make before addressing this properly (mainly around gathering metrics properly with the new subcommand structure) and we should tackle them first in separate PRs. When we've finished this work, we can revisit this change again. It is very likely that this will happen in a separate PR but we will draw from your work here and the knowledge you've acquired. As such, I'm going to close this one unmerged as it is likely that this code as it is now will not be merged but rather be used as reference later on. |
Implement provision, start and stop subcommands for independently managing the benchmarking candidate.
Relates #697
Closes #733