spacetelescope / catkit2

Package for controlling testbed hardware.
https://spacetelescope.github.io/catkit2/
BSD 3-Clause "New" or "Revised" License
5 stars 0 forks source link

Testbed to read service IDs from more than just `services.yml` #210

Open ivalaginja opened 5 months ago

ivalaginja commented 5 months ago

The testbed explicitly collects all service IDs found in services.yml: https://github.com/spacetelescope/catkit2/blob/781ce3755b9db7a7abdae4945d58071bb7959ef3/catkit2/testbed/testbed.py#L176 This happens in a couple more places in catkit2/testbed/testbed.py and in catkit2/testbed/testbed_proxy.py.

I am trying to come up with a way where I could have the testbed collect service IDs from more than just the services configuration. In particular, we have so many individual motor services on THD2 that I would like to separate them out into a file like motors.yml. It seems like it should be easy to optionally pass additional config keys that would also be used as a source for service IDs. I am just still trying to figure out how to implement that without a change that is too invasive, and most of all keep things working with the current default setup.

I also just saw there's some of that in catkit_core/Service.cpp: https://github.com/spacetelescope/catkit2/blob/781ce3755b9db7a7abdae4945d58071bb7959ef3/catkit_core/Service.cpp#L30 So I might have to be more careful with that.