← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1866292] [NEW] non-admin shouldn't get the ['host', 'traceback'] of os-instance-actions's events

 

Public bug reported:

In https://review.opendev.org/#/c/706470/7 patch, it would like to
refresh the os-instance-actions default, the 'os_compute_api:os-
instance-actions:events' role will from 'rule:admin_api' to
'rule:system_admin_api', it's right.

In microversion 2.62, 2.58 and 2.51 we checeked the non admin get
response, but ['traceback'] just only get by admin  role [2].

[1]https://opendev.org/openstack/nova/src/branch/master/nova/tests/functional/api_sample_tests/test_instance_actions.py#L140

[2]https://opendev.org/openstack/nova/src/branch/master/api-
guide/source/faults.rst#user-content-server-actions

Bellow error comes from https://review.opendev.org/#/c/706470/7:

temporary link:https://0eb8bf1f49f1b12e44de-
fa8c367d29960a6ba7cc5d4b52d5b2a7.ssl.cf1.rackcdn.com/706470/7/check
/nova-tox-functional-py36/2d180f3/testr_results.html

Exception info see http://paste.openstack.org/show/790375/

** Affects: nova
     Importance: Undecided
         Status: New

** Description changed:

  In https://review.opendev.org/#/c/706470/7 patch, it would like to
  refresh the os-instance-actions default, the 'os_compute_api:os-
  instance-actions:events' role will from 'rule:admin_api' to
  'rule:system_admin_api', it's right.
  
  In microversion 2.62, 2.58 and 2.51 we checeked the non admin get
  response, but ['traceback'] just only get by admin  role [2].
  
  [1]https://opendev.org/openstack/nova/src/branch/master/nova/tests/functional/api_sample_tests/test_instance_actions.py#L140
  
  [2]https://opendev.org/openstack/nova/src/branch/master/api-
  guide/source/faults.rst#user-content-server-actions
  
  Bellow error comes from https://review.opendev.org/#/c/706470/7:
  
  temporary link:https://0eb8bf1f49f1b12e44de-
  fa8c367d29960a6ba7cc5d4b52d5b2a7.ssl.cf1.rackcdn.com/706470/7/check
  /nova-tox-functional-py36/2d180f3/testr_results.html
  
- info:
- 
- ft3.1: nova.tests.functional.api_sample_tests.test_instance_actions.ServerActionsV262NonAdminSampleJsonTest.test_instance_action_get(v2_62)testtools.testresult.real._StringException: pythonlogging:'': {{{
- 2020-03-05 12:47:27,232 WARNING [placement.db_api] TransactionFactory already started, not reconfiguring.
- 2020-03-05 12:47:27,363 INFO [nova.service] Starting conductor node (version 20.1.0)
- 2020-03-05 12:47:27,400 INFO [nova.service] Starting scheduler node (version 20.1.0)
- 2020-03-05 12:47:27,431 INFO [nova.virt.driver] Loading compute driver 'fake.SmallFakeDriver'
- 2020-03-05 12:47:27,432 INFO [nova.service] Starting compute node (version 20.1.0)
- 2020-03-05 12:47:27,448 WARNING [nova.compute.manager] Compute node fake-mini not found in the database. If this is the first time this service is starting on this host, then you can ignore this warning.
- 2020-03-05 12:47:27,452 INFO [nova.compute.manager] Looking for unclaimed instances stuck in BUILDING status for nodes managed by this host
- 2020-03-05 12:47:27,466 WARNING [nova.compute.manager] No compute node record found for host compute. If this is the first time this service is starting on this host, then you can ignore this warning.
- 2020-03-05 12:47:27,471 WARNING [nova.compute.resource_tracker] No compute node record for compute:fake-mini
- 2020-03-05 12:47:27,475 INFO [nova.compute.resource_tracker] Compute node record created for compute:fake-mini with uuid: 778617c7-8ac1-4969-a4f6-2c30b36c6135
- 2020-03-05 12:47:27,514 INFO [placement.requestlog] 127.0.0.1 "GET /placement/resource_providers?in_tree=778617c7-8ac1-4969-a4f6-2c30b36c6135" status: 200 len: 26 microversion: 1.14
- 2020-03-05 12:47:27,523 INFO [placement.requestlog] 127.0.0.1 "POST /placement/resource_providers" status: 200 len: 832 microversion: 1.20
- 2020-03-05 12:47:27,525 INFO [nova.scheduler.client.report] [req-49e2829a-9224-4f46-9d8c-14c55f3e738c] Created resource provider record via placement API for resource provider with UUID 778617c7-8ac1-4969-a4f6-2c30b36c6135 and name fake-mini.
- 2020-03-05 12:47:27,551 INFO [placement.requestlog] 127.0.0.1 "PUT /placement/resource_providers/778617c7-8ac1-4969-a4f6-2c30b36c6135/inventories" status: 200 len: 399 microversion: 1.26
- 2020-03-05 12:47:27,564 INFO [placement.requestlog] 127.0.0.1 "GET /placement/traits?name=in:COMPUTE_TRUSTED_CERTS,COMPUTE_NET_ATTACH_INTERFACE_WITH_TAG,COMPUTE_VOLUME_ATTACH_WITH_TAG,COMPUTE_VOLUME_MULTI_ATTACH,COMPUTE_DEVICE_TAGGING,COMPUTE_VOLUME_EXTEND,COMPUTE_NODE,COMPUTE_NET_ATTACH_INTERFACE,COMPUTE_IMAGE_TYPE_RAW" status: 200 len: 268 microversion: 1.6
- 2020-03-05 12:47:27,593 INFO [placement.requestlog] 127.0.0.1 "PUT /placement/resource_providers/778617c7-8ac1-4969-a4f6-2c30b36c6135/traits" status: 200 len: 303 microversion: 1.6
- 2020-03-05 12:47:28,067 INFO [placement.requestlog] 127.0.0.1 "GET /placement/allocation_candidates?limit=1000&resources=DISK_GB%3A1%2CMEMORY_MB%3A512%2CVCPU%3A1&root_required=%21COMPUTE_STATUS_DISABLED" status: 200 len: 769 microversion: 1.35
- 2020-03-05 12:47:28,108 INFO [placement.requestlog] 127.0.0.1 "GET /placement/allocations/134d7d78-8a30-4fe4-babd-e4a46bf638b1" status: 200 len: 19 microversion: 1.28
- 2020-03-05 12:47:28,148 INFO [placement.requestlog] 127.0.0.1 "PUT /placement/allocations/134d7d78-8a30-4fe4-babd-e4a46bf638b1" status: 204 len: 0 microversion: 1.35
- 2020-03-05 12:47:28,214 ERROR [nova.conductor.manager] During scheduling instance is already mapped to another cell: 1c308ce6-f263-4c8f-a90d-c296ff8cabdd(onlycell). This should not happen and is an indication of bigger problems. If you see this you should report it to the nova team. Overwriting the mapping to point at cell 1c308ce6-f263-4c8f-a90d-c296ff8cabdd(onlycell).
- 2020-03-05 12:47:28,298 INFO [placement.requestlog] 127.0.0.1 "GET /placement/allocations/134d7d78-8a30-4fe4-babd-e4a46bf638b1" status: 200 len: 229 microversion: 1.28
- 2020-03-05 12:47:28,301 INFO [nova.compute.claims] Claim successful on node fake-mini
- 2020-03-05 12:47:28,524 INFO [nova.compute.manager] Took 0.00 seconds to spawn the instance on the hypervisor.
- 2020-03-05 12:47:28,586 INFO [nova.scheduler.host_manager] Received an update from an unknown host 'compute'. Re-created its InstanceList.
- 2020-03-05 12:47:28,589 INFO [nova.compute.manager] Took 0.30 seconds to build instance.
- 2020-03-05 12:47:28,596 INFO [nova.api.openstack.requestlog] 127.0.0.1 "POST /v2.1/6f70656e737461636b20342065766572/servers" status: 202 len: 448 microversion: 2.62 time: 0.719384
- 2020-03-05 12:47:28,817 INFO [nova.api.openstack.requestlog] 127.0.0.1 "POST /v2.1/6f70656e737461636b20342065766572/servers/134d7d78-8a30-4fe4-babd-e4a46bf638b1/action" status: 202 len: 0 microversion: 2.62 time: 0.216019
- 2020-03-05 12:47:28,856 INFO [nova.api.openstack.requestlog] 127.0.0.1 "GET /v2.1/6f70656e737461636b20342065766572/servers/134d7d78-8a30-4fe4-babd-e4a46bf638b1/os-instance-actions" status: 200 len: 641 microversion: 2.62 time: 0.036662
- 2020-03-05 12:47:28,928 INFO [nova.api.openstack.requestlog] 127.0.0.1 "GET /v2.1/6f70656e737461636b20342065766572/servers/134d7d78-8a30-4fe4-babd-e4a46bf638b1" status: 200 len: 2092 microversion: 2.62 time: 0.068308
- 2020-03-05 12:47:28,971 INFO [nova.api.openstack.requestlog] 127.0.0.1 "GET /v2.1/6f70656e737461636b20342065766572/servers/134d7d78-8a30-4fe4-babd-e4a46bf638b1/os-instance-actions/req-c86b3134-3a5c-4e72-90a4-68adbc24c5bd" status: 200 len: 593 microversion: 2.62 time: 0.039697
- 2020-03-05 12:47:29,124 INFO [oslo_db.sqlalchemy.provision] DROP ALL OBJECTS, BACKEND sqlite://
- 2020-03-05 12:47:29,155 INFO [oslo_db.sqlalchemy.provision] DISPOSE ENGINE Engine(sqlite://)
- }}}
- 
- Traceback (most recent call last):
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 400, in _verify_response
-     response_data, "Response")
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 180, in _compare_result
-     result_str)
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 180, in _compare_result
-     result_str)
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 195, in _compare_result
-     return self._compare_result(expected[0], result[0], result_str)
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 176, in _compare_result
-     'res_delta': res_delta})
- nova.tests.functional.api_samples_test_base.NoMatch: Dictionary key mismatch:
- Extra key(s) in template:
- []
- Extra key(s) in Response:
- ['host', 'traceback']
- 
- 
- During handling of the above exception, another exception occurred:
- 
- Traceback (most recent call last):
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_sample_tests/test_instance_actions.py", line 54, in test_instance_action_get
-     self._verify_response(name, self._get_subs(), response, 200)
-   File "/home/zuul/src/opendev.org/openstack/nova/nova/tests/functional/api_samples_test_base.py", line 407, in _verify_response
-     pp.pformat(response_data)))
- nova.tests.functional.api_samples_test_base.NoMatch: 
- Failed to match Template to Response: 
- Dictionary key mismatch:
- Extra key(s) in template:
- []
- Extra key(s) in Response:
- ['host', 'traceback']
- 
- Template: {   'instanceAction': {   'action': 'stop',
-                           'events': [   {   'event': 'compute_stop_instance',
-                                             'finish_time': '%(strtime)s',
-                                             'hostId': '%(event_hostId)s',
-                                             'result': 'Success',
-                                             'start_time': '%(strtime)s'}],
-                           'instance_uuid': '%(uuid)s',
-                           'message': None,
-                           'project_id': '%(project_id)s',
-                           'request_id': '%(request_id)s',
-                           'start_time': '%(strtime)s',
-                           'updated_at': '%(strtime)s',
-                           'user_id': '%(user_id)s'}}
- 
- Response: {   'instanceAction': {   'action': 'stop',
-                           'events': [   {   'event': 'compute_stop_instance',
-                                             'finish_time': '2020-03-05T12:47:28.811678',
-                                             'host': 'compute',
-                                             'hostId': '2091634baaccdc4c5a1d57069c833e402921df696b7f970791b12ec6',
-                                             'result': 'Success',
-                                             'start_time': '2020-03-05T12:47:28.713393',
-                                             'traceback': None}],
-                           'instance_uuid': '134d7d78-8a30-4fe4-babd-e4a46bf638b1',
-                           'message': None,
-                           'project_id': '6f70656e737461636b20342065766572',
-                           'request_id': 'req-c86b3134-3a5c-4e72-90a4-68adbc24c5bd',
-                           'start_time': '2020-03-05T12:47:28.601282',
-                           'updated_at': '2020-03-05T12:47:28.811678',
-                           'user_id': 'fake'}}
+ Exception info see http://paste.openstack.org/show/790375/

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1866292

Title:
  non-admin shouldn't get the ['host', 'traceback'] of os-instance-
  actions's events

Status in OpenStack Compute (nova):
  New

Bug description:
  In https://review.opendev.org/#/c/706470/7 patch, it would like to
  refresh the os-instance-actions default, the 'os_compute_api:os-
  instance-actions:events' role will from 'rule:admin_api' to
  'rule:system_admin_api', it's right.

  In microversion 2.62, 2.58 and 2.51 we checeked the non admin get
  response, but ['traceback'] just only get by admin  role [2].

  [1]https://opendev.org/openstack/nova/src/branch/master/nova/tests/functional/api_sample_tests/test_instance_actions.py#L140

  [2]https://opendev.org/openstack/nova/src/branch/master/api-
  guide/source/faults.rst#user-content-server-actions

  Bellow error comes from https://review.opendev.org/#/c/706470/7:

  temporary link:https://0eb8bf1f49f1b12e44de-
  fa8c367d29960a6ba7cc5d4b52d5b2a7.ssl.cf1.rackcdn.com/706470/7/check
  /nova-tox-functional-py36/2d180f3/testr_results.html

  Exception info see http://paste.openstack.org/show/790375/

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1866292/+subscriptions


Follow ups