[Ceph] [tempest] All tests for ObjectStorage API failed for clouds with Ceph RadosGW

Bug #1442193 reported by Timur Nurlygayanov
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mirantis OpenStack
Status tracked in 10.0.x
10.0.x
Fix Released
High
Evgeny Konstantinov
6.1.x
Won't Fix
Medium
MOS Ceph
7.0.x
Won't Fix
Medium
MOS Ceph
8.0.x
Won't Fix
Medium
MOS Ceph

Bug Description

We can see that 130 Tempest tests failed for OpenStack clouds, which were deployed by MOS and looks like the reason of these fails in non-full support of SwiftAPI in Ceph RadosGW.

Steps To Reproduce:
1. Deploy cluster with Ceph RadosGW
2. Run full Tempest test suite using "rally verify"

Expected Result:
All Tempest tests passed without any issues.

Actual Result:
Many Tempest tests failed because RadosGW API doesn't support the same return codes as Swift API, in the result Tempest tests failed.

This issue reproduced on 6.0, 6.1, 7.0, 8.0 and 9.0 versions.

Note:
Ceph team work on this, we can see the information about the progress here:
https://docs.google.com/a/mirantis.com/spreadsheets/d/1LZx3ZRCK-ezaKddyE6HgU-Xau2DOZKtAYLrtkit0jPU/edit#gid=0

tags: added: ceph tempest
Changed in mos:
importance: Undecided → Medium
assignee: nobody → Kostiantyn Danylov (kdanylov)
milestone: none → 7.0
status: New → Confirmed
description: updated
Changed in mos:
assignee: Kostiantyn Danylov (kdanylov) → MOS Ceph (mos-ceph)
Changed in mos:
milestone: 7.0 → 8.0
Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote :

Why is it not fixed?

Changed in mos:
milestone: 8.0 → 9.0
Changed in mos:
assignee: MOS Ceph (mos-ceph) → Maksym Shalamov (mshalamov)
Changed in mos:
assignee: Maksym Shalamov (mshalamov) → MOS Ceph (mos-ceph)
tags: added: area-ceph
removed: ceph
summary: [Ceph] [tempest] All tests for ObjectStorage API failed for clouds with
- Ceph
+ Ceph RadosGW
description: updated
no longer affects: mos/9.0.x
Revision history for this message
Bug Checker Bot (bug-checker) wrote : Autochecker

(This check performed automatically)
Please, make sure that bug description contains the following sections filled in with the appropriate data related to the bug you are describing:

actual result

version

For more detailed information on the contents of each of the listed sections see https://wiki.openstack.org/wiki/Fuel/How_to_contribute#Here_is_how_you_file_a_bug

tags: added: need-info
description: updated
tags: removed: need-info
Changed in mos:
importance: Medium → High
Changed in mos:
assignee: MOS Ceph (mos-ceph) → Maksym Shalamov (mshalamov)
Revision history for this message
Sergii Turivnyi (sturivnyi) wrote :

This bug also affects heat. We have 2 failed tests:
test_metadata in tempest.api.orchestration.stacks.test_swift_resources.SwiftResourcesTestJSON
test_acl in tempest.api.orchestration.stacks.test_swift_resources.SwiftResourcesTestJSON

Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote :

We have agreed to add the release note about the issue and skip the tests because RadosGW and Swift API has different APIs

Revision history for this message
Maksym Shalamov (mshalamov) wrote :

Hello all,

This issue is associated with both tests behavior and product functionality. We are using the same test created for Swift for testing radosGW

However Swift, besides implementing the OpenStack Object Storage API v1, provides a bunch extensions like SLO/DLO (static/dynamic large objects), bulk operations (inc. server-side archive extraction), staticweb and many more.

Swift internally utilizes a pipeline-based architecture. Component delivering the base of OSOS API (the "proxy-server" WSGI application) could be seen as the last stage of such pipeline. Between it and user a lot of additional middleware modules exist and all of it are interconnected with the WSGI interface.

Based on all described above we able to say that:
for today we have a serious difference between Swift and Rados Gateway functionality.
reimplementing described above features for Rados Gateway could be “painful”.
maintaining this features in case if implemented would be another challenge.

From another side, even if we implement it, we will have another “big restrictions” - our configuration will be frozen and un-upgradeable, any additional third party extensions will not be available for Rados Gateway users.

Based on all of the above-mentioned, we are able to аllocate three main reasons for the falling tests:
issues in implementation of OpenStack Object Storage API v1 for Rados Gateway;
no similar extensions for Rados Gateway that exist for Swift;
in tempest tests for object storage present verification of functionality that did not described in official documentation for Swift API.

RefStack [1] can validate OpenStack Interoperability [2]. For Object store there is a short subset of basic Tempest tests that should be green.

Object Storage Capabilities objectstore-object-get✓ ✓objectstore-object-delete✓ ✓objectstore-object-copy✓ ✓objectstore-object-access✓ ✓objectstore-object-create✓ ✓objectstore-object-put✓ ✓objectstore-object-upload✓ ✓objectstore-object-versioned✓ ✓objectstore-temp-url-get✓ ✓

Based on all of the above-mentioned, we have agreed to add the release note about the issue and skip the unrequired tests

For more details related to executions of the tempest tests against Rados GW, please take a look into [3]

[1] https://wiki.openstack.org/wiki/RefStack
[2] http://www.openstack.org/brand/interop/
[3] http://cz7776.bud.mirantis.net:8080/jenkins/view/TEMPEST-9.0/

Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote :

please do not assign such defects directly to OpenStack projects. It should be in MOS.

Changed in mos:
assignee: Maksym Shalamov (mshalamov) → Fuel Documentation Team (fuel-docs)
Changed in heat:
status: New → Invalid
Thomas Herve (therve)
no longer affects: heat
Changed in mos:
assignee: Fuel Documentation Team (fuel-docs) → Evgeny Konstantinov (evkonstantinov)
tags: added: release-notes
Changed in mos:
status: Confirmed → Won't Fix
status: Won't Fix → In Progress
Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote :

I've described a separate bug for Tempest project:
https://bugs.launchpad.net/tempest/+bug/1590505

Let's track release notes in this bug and proper fix in bug inside Tempest project.

Revision history for this message
Michele Fagan (michelefagan) wrote :

@Maksym Shalamov: Are you able to provide the text for the release note re. Swift and Rados Gateway functionality? Thanks.

Revision history for this message
Maksym Shalamov (mshalamov) wrote :

@Michele Fagan: The text will be created by the end of week.

Revision history for this message
Maksym Shalamov (mshalamov) wrote :
Changed in mos:
status: In Progress → Won't Fix
Revision history for this message
Evgeny Konstantinov (evkonstantinov) wrote :

it's in the KB

tags: removed: release-notes
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.