Commit 5d0566de authored by Iustin Pop's avatar Iustin Pop
Browse files

Accept both PUT and POST in noded

This is a partial cherry-pick from

 on master:

Currently, noded requires PUT, even though the semantics of the RPC
calls do not match a PUT. We change the code accept both PUT and POST,
with the intention to remove the PUT support in a later version.

Additionally, we add a message to the HttpBadRequest exception to make
clear the failure mode (not seeing any error message was what made me
send this patch…). This was the only description-less use of this
exception, by the way.
Signed-off-by: default avatarIustin Pop <>
Reviewed-by: default avatarRené Nussbaumer <>
(cherry picked from commit 7530364d


What was not cherry-picked is the rpc change (to switch to PUT). The
reason I want to backport this to devel-2.5 is that when upgrading to
2.6, having noded accept both makes for an easier upgrade path.
Signed-off-by: default avatarIustin Pop <>
Reviewed-by: default avatarMichael Hanselmann <>
parent dd9b9d7b
......@@ -138,8 +138,9 @@ class NodeHttpServer(http.server.HttpServer):
"""Handle a request.
if req.request_method.upper() != http.HTTP_PUT:
raise http.HttpBadRequest()
# FIXME: Remove HTTP_PUT in Ganeti 2.7
if req.request_method.upper() not in (http.HTTP_PUT, http.HTTP_POST):
raise http.HttpBadRequest("Only PUT and POST methods are supported")
path = req.request_path
if path.startswith("/"):
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment