[openstack-dev] [tempest][swift][radosgw] Can we please merge the fix for the RFC 7230 violation issue?
Jay Pipes
jaypipes at gmail.com
Mon Aug 8 16:50:46 UTC 2016
Tempest devs,
Let me please draw your attention to a LP bug that may not seem
particularly high priority, but I believe could be resolved easily with
a patch already proposed.
LP bug 1536251 [1] accurately states that Tempest is actively verifying
that an OpenStack API call violates RFC 7230.
When a 204 No Content is received, the Content-Length header MUST NOT be
present.
However, Swift returns a Content-Length header and also an HTTP response
code of 204 for a request to list containers of a new user (that has no
containers).
Tempest has been validating this behaviour even though it is a violation
of RFC 7230:
https://github.com/openstack/tempest/blob/master/tempest/api/object_storage/test_account_services.py#L81
RadosGW provides a proxy API that attempts to match the OpenStack Object
Storage API, backed by Ceph object storage. In order for RadosGW to pass
RefStack's burden of compatibility, it must pass the Tempest OpenStack
Object Storage API tests. It currently cannot do so because RadosGW does
not violate RFC 7230.
The RadosGW developer community does not wish to argue about whether or
not to make Swift's API comply with RFC 7230. At the same time, they do
not want to add a configuration option to RadosGW to force the proxy
service to violate RFC 7230 just to satisfy the RefStack/Tempest API tests.
Therefore, Radoslaw (cc'd) has proposed a patch to Tempest that would
allow RadosGW's proxy API to meet the RefStack compatibility tests while
also not violating RFC 7230 and not requiring any change of Swift:
https://review.openstack.org/#/c/272062
I ask Tempest devs to re-review the above patch and consider merging it
for the sake of collaboration between the OpenStack and Ceph developer
communities.
Thanks very much!
-jay
[1] https://bugs.launchpad.net/tempest/+bug/1536251
More information about the OpenStack-dev
mailing list