Conversation
a6e4425 to
143e44e
Compare
143e44e to
bfdf168
Compare
|
Thanks for taking this on, it's going to be very useful! I have one suggestion. Since smpmgr is a tool for developers, most of the commands (rich)print the response itself. The idea is that a developer may be using smpmgr to test their own user facing application. So, for consistency, the enum handlers should simply (rich)print the response itself. Then, in the next PR we can add a top level "list" command that, like "upgrade", abstracts a series of commands for the user's convenience. "List" would provide a list of the enabled command groups, and commands, if possible. In the interactive session, it could even remove the commands that are not enabled. LMK your thoughts! |
|
thoughts: agree So I'm clear, are you suggesting removing the I tried to follow an example from one of the other group handlers. |
Wow, this makes me realize that we've implemented blessed-few of the commands. We've sorta done the hard ones that require abstraction. These are a good example of what I think it most useful to a dev because it's unambiguous: smpmgr/smpmgr/os_management.py Lines 13 to 40 in b1f8d25 So yeah, it can even remove the response type checking. E.g., an "error" response is not an smpmgr CLI error, it's a "successful error" response 🤣. |
We don't need to do extra processing on these.
This will increase utility a bunch. I view smpmgr as a utility tool, both high and low level. AI was trying to get me to write (docs) looking like This PR has been updated addressing comments.
Haven't tried that yet. I'm open to implementing the next PR with higher-level functionality. |
This is looking great! Let's bump smpclient in the pyproject.toml to require ^5.1.0, which includes the enum support that you added. |
|
Moved to #67 |
Requires intercreate/smpclient#71
adds