-
Notifications
You must be signed in to change notification settings - Fork 6k
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
tools: cleanup: rip out ceph-rest-api #17530
Conversation
@dvanders ping |
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.
Thanks @smithfarm !
Not to be a naysayer, but: does the mgr's REST API allow submitting any ceph CLI command in a supported way? Supposedly ceph-rest-api does (and it uses the command descriptions from the daemons, so supposedly added new commands as they were added). I really doubt any large org is depending on this in any meaningful way, but...it's not clear to me that we have an exact replacement. |
I don't think there are any detailed docs online for the new rest api :-( so I'm just looking at the code, it looks like the Request.post method is meant to be a passthrough. ceph-rest-api does have a nice dump of available commands for mistyped URLs, which probably makes it a bit friendlier for people who are really looking for a passthrough. I'm also a bit concerned that there hasn't been any active development activity on the restful module -- if we are going to maintain something minimal then porting ceph_rest_api forward into a mgr module might make more sense. |
@liewegas no problem here. Thx for the ping. |
My preference would also be to transplant this into a mgr module, but that takes actual work. :/ |
The restful module does provide a pass through method. It is not properly documented because when the module was introduced it was suggested that it should be difficult to use so that people do not expect too much out of it as they did in case of calamari 'command' endpoint. We can make it more usable so that it could fully obsolete the ceph-rest-api and it should not be too difficult to achieve. You are right that we should take a dump of the /doc endpoint and add it to the upstream docs. I'll try to do that in the next couple of days. It is better to have this readily available online as well. |
FWIW, inkscope uses the ceph-rest-api to perform its tasks - it may make sense to ping @A-Dechorgnat on his take on removing this. |
If someone steps forward to convert ceph-rest-api into a mgr module, feel free to close this PR. If the consensus is to rip it out for mimic, and assuming this PR is still a viable option for doing that, let me know and I'll rebase it. |
I'm inclined to proceed with ripping it out, as although people have fairly suggested that it would be nice to port it over to mgr, or to improve the restful module's documentation, I don't think anyone is volunteering to do any work. Anyone who misses ceph-rest-api has a couple of decent options: use the CLI (this was already just a pass-through CLI wrapper), or move to the restful module. |
Yeah, as long as we have a specific place in restful to point users toward, I'm fine. |
This should help with regards to the restful documentation. It also explains how to use the pass through method. |
OK, rebased and removing DNM |
Will proceed with QA testing after I get one more review? |
Changelog:
|
Obsoleted by the mgr REST API. Fixes: http://tracker.ceph.com/issues/21264 Signed-off-by: Nathan Cutler <ncutler@suse.com>
References: http://tracker.ceph.com/issues/21264 Signed-off-by: Nathan Cutler <ncutler@suse.com>
87399be introduced an explicit dependency on python-jinja2, but mistakenly as an overall build dependency instead of as a runtime dependency of ceph-mgr as intended. Fixes: http://tracker.ceph.com/issues/22457 Signed-off-by: Nathan Cutler <ncutler@suse.com>
Oops, found a problem in #19598 which caused a massive rados failure. Added a commit to fix it. |
Interpretation: Two of the failed jobs were related to this PR and a commit has been added to fix them. The other failures are unrelated. |
Note to self: need to backport the build/ops (DEB) fix to luminous via http://tracker.ceph.com/issues/22457 |
Fixes: http://tracker.ceph.com/issues/21264 Signed-off-by: Nathan Cutler <ncutler@suse.com>
This workunit is only used by the two rest-api test cases that are also being removed. Fixes: http://tracker.ceph.com/issues/21264 Signed-off-by: Nathan Cutler <ncutler@suse.com>
http://tracker.ceph.com/issues/21264
http://tracker.ceph.com/issues/22457