[openstack-dev] [Neutron][tempest] Timestamp service extension breaks CI

Kevin Benton kevin at benton.pub
Sun Mar 6 21:27:38 UTC 2016

Keep in mind that fix for ML2 is the correct behavior, not a workaround. It
was not including extension data in create calls so there was an API
difference between a create and a get/update of the same object. It's now
calling the extensions to let them populate their fields of the dict.

If you're plugin does not exhibit the correct behavior in this case, I
would just disable the test in question because it sounds like a bug in the
plugin, not the test. It's reasonable to expect the timestamps that will be
visible on every other API call to also be visible in create calls.
Gal Sagie pointed me to patch in ML2 and OVN that address this by
re-reading the networks and ports to ensure that the information is read.
For those interested and whom it affects please see:
ML2 - https://review.openstack.org/#/c/276219/
*OVN - https://review.openstack.org/#/c/277844/


From: Gary Kotton <gkotton at vmware.com>
Reply-To: OpenStack List <openstack-dev at lists.openstack.org>
Date: Sunday, March 6, 2016 at 4:04 PM
To: OpenStack List <openstack-dev at lists.openstack.org>
Subject: [openstack-dev] [Neutron][tempest] Timestamp service extension
breaks CI

The commit
the CI to fail. This is due to the fact that the port creation does not
return the created_at and updated_at keys. The tempest test that the keys
are the same. Please see [I]
I posted patch https://review.openstack.org/289017 to address this. I am
not sure if this is the correct way to go.
There are far too many API changes that should not be breaking things at
this very stage in the cycle.


ft29.11: tempest.api.network.test_ports.PortsTestJSON.test_show_port[id-c9a685bd-e83f-499c-939f-9f7863ca259f,smoke]_StringException:
Empty attachments:

pythonlogging:'': {{{
2016-03-06 01:05:00,301 27371 INFO
[tempest.lib.common.rest_client] Request
(PortsTestJSON:test_show_port): 200 GET
2016-03-06 01:05:00,302 27371 DEBUG
[tempest.lib.common.rest_client] Request - Headers: {'Content-Type':
'application/json', 'Accept': 'application/json', 'X-Auth-Token':
        Body: None
    Response - Headers: {'status': '200', 'content-length': '532',
'connection': 'close', 'date': 'Sun, 06 Mar 2016 09:05:00 GMT',
'content-type': 'application/json; charset=UTF-8',
'x-openstack-request-id': 'req-2825ed72-1417-4cf9-b37f-4894fa5b0b0f'}
        Body: {"port": {"status": "ACTIVE", "description": "",
"allowed_address_pairs": [], "admin_state_up": true, "network_id":
"4545014d-1e11-4b73-a5e3-bcdcd992478e", "name": "", "created_at":
"2016-03-06T09:01:56", "mac_address": "fa:16:3e:08:a4:90",
"updated_at": "2016-03-06T09:01:56", "vnic_index": null,
"device_owner": "", "tenant_id": "e66f0c1efb664b05b34afc3d51903a1e",
"port_security_enabled": true, "binding:vnic_type": "normal",
"fixed_ips": [], "id": "f00d5dcc-4143-4f63-8c7c-0ea8d566c87b",
"security_groups": [], "device_id": ""}}

Traceback (most recent call last):
  File "/opt/stack/tempest/tempest/api/network/test_ports.py", line
139, in test_show_port
    (port, excluded_keys=['extra_dhcp_opts']))
  File "/opt/stack/tempest/.venv/local/lib/python2.7/site-packages/testtools/testcase.py",
line 447, in assertThat
    raise mismatch_error
testtools.matchers._impl.MismatchError: Only in expected:
  {'created_at': 2016-03-06T09:01:56, 'updated_at': 2016-03-06T09:01:56}

OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160306/c08f9606/attachment.html>

More information about the OpenStack-dev mailing list