SessMan: dedicated gRPC message types#58
Conversation
|
Is there a documentation on how to start a Session Manager service and connect to it? |
|
At the moment, in our frontend testing we are just from drunc.session_manager.session_manager_driver import SessionManagerDriver
from drunc.utils.shell_utils import create_dummy_token_from_uname
def get_session_manager_driver() -> SessionManagerDriver:
"""Get a ProcessManagerDriver instance."""
token = create_dummy_token_from_uname()
return SessionManagerDriver(
SESSION_MANAGER_URL, token=token, aio_channel=False
)Ed: No documentation now though. Do you want a note added somewhere? |
|
It would be good to start adding a Session Manager session in drunc wiki, similar to the PM: https://github.com/DUNE-DAQ/drunc/wiki/Process-manager |
|
Agreed. I will make a separate issue to tackle later though, so I can get these changes done quickly (I am mindful that work on the process manager will be starting soon, so I would prefer to finish before this time): |
PawelPlesniak
left a comment
There was a problem hiding this comment.
Tested manually
Also passed MSQT, although is independent of tests ran there
LGTM
This is the first in a series of changes which will replace the existing generic gRPC messages (arbitrary data packed to any) to a simpler and more reliable system of purpose-built gRPC messages.
This first PR starts with the Session Manager. Next will come Process Manager and then Controller. There is a sister PR in the drunc repository required to run this (DUNE-DAQ/drunc#485).
One can test by running
describe,list_all_sessionsandlist_all_configson a connected Session Manager driver.Benefits:
Any-type packing and unpacking. This is inefficient and hard to follow.