Comment 2 for bug 1850280

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.opendev.org/691900
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=899976960503524b8e5c6588e339742ca4bf8158
Submitter: Zuul
Branch: master

commit 899976960503524b8e5c6588e339742ca4bf8158
Author: Balazs Gibizer <email address hidden>
Date: Tue Oct 29 16:43:04 2019 +0100

    Use admin neutron client to see if instance has qos ports

    The nova-api checks at each move* operation if the instance has qos port
    attached as not all the move operations are supported for such servers.
    Nova uses the request context to initialize the neutron client for the
    port query. However neutron does not return the value of the
    resource_request of the port if it is queried with a non admin client.
    This causes that if the move operation is initiated by a non admin
    then nova thinks that the ports do not have resource request.

    This patch creates an admin context for this neutron query.

    The new functional tests are not added before this patch in a regression
    test like way as existing functional tests are reused with different
    setup and doing that without the fix causes a lot of different failure
    scenarios.

    Note that neutron fixture is changed to simulate the different behavior
    in case of different request context are used to initialize the client.

    *: Note that Id5f2f4f22b856c989e2eef8ed56b9829d1bcefb6 removed the check
       for evacuate in Ussuri but exists in Train and Stein.

    Change-Id: I3cf6eb4654663865d9258c38f05cd05974ffcf9d
    Closes-Bug: #1850280