Conversation
c919758
to
dd0540b
Compare
Maybe the diff isn't showing it, or I'm confused. I was looking for the code that uses channels to send commands either to the control interface or to the managed host.. is that somewhere else? |
@autodidaddict Yeah it's just moved around because I restructured the project a bit to clean up the code, check |
Thanks for the link.. though it's still not in the diff, this is what I was looking for: Line 642 in dd0540b
|
dd0540b
to
e028a7c
Compare
implemented ctl get hosts for standalone host, channels abound comments and host command scaffold modified all the things. can start and call actor implemented start, stop and link commands moved output helpers to its own file addressed clippy warnings, added warnings for partial/no support remove todo that shouldnt be done capitalizing host id
e028a7c
to
800116a
Compare
As of my latest commit:
There are only a few more areas where I need to implement functionality
|
updated to display single image_ref
All functionality has been implemented and |
REVIEWER'S GUIDE TO SOME OF THE BIG CHANGES (@autodidaddict ) I've refactored the
|
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.
LGTM once clippy has been placated.
Addresses #92
No-nats mode now supports all but the following commands from the standard lattice connected mode:
ctl get claims
ctl update actor
ctl get inventory
(partial)These are all unsupported at the moment because there are not equivalent commands to invoke on the host directly, and some make use of the host controller on the control interface side in order to return the correct information. This will need to be addressed. I'm primarily concerned about implementing
get inventory
for the host inventory, as that contains much needed information, specifically link names and OCI references. @autodidaddict I've added what I can of support for now (see the host inventory implementation for standalone) however we might be better off implementing some of this functionality on the host side.For this PR, I've added a few additional threads and channels to allow
wash up
to run a REPL without connecting to NATS, as indicated by theStandalone
title by the REPL. This launches an embedded host, as usual, however, commands will be invoked directly on that host instead of proxying through the control interface.A few modifications for reviewers:
ctl
andup
are getting to contain large amounts of code, so I've split some large pieces into separate files under a folder of the same name. This is a pretty standard Rust pattern. I didn't split larger pieces of the REPL out into separate files because I made many assumptions about accessing fields, and I'd have to write just as much code as I'd save in getters, setters, and modifications.output
module underctl/output.rs
is used to standardize the output format for control interface operations and embedded host operations, that way what the user sees should be identical for standalone mode and lattice connected mode.