[openstack-dev] [nova] How to fix the wrong usage of 'format' jsonschema keyword in server create API

Alex Xu soulxu at gmail.com
Mon Mar 7 06:18:51 UTC 2016


Hi,

Due to this regression bug https://launchpad.net/bugs/1552888, found we are
using 'formart' jsonschema keyword in wrong way. The 'format' is not only
for string instance, but all the types.

So checking the server create API, we have problem at
https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/schemas/servers.py#L38.
The original purpose of jsonschema want to allow 'null' value by the 'type'
keywordl. Actually the 'null' value isn't allowed, as the 'uuid' format
will return fault for 'null' value.

So what we need to do for this:

Option1: Fix it with microversion
Option2: Fix it without microversion
Option3: Keep it as 'null' isn't allowed.

If we choice to fix it, I think we need Microversion, due to this bug is
introduced before v2.1 API release.

But I prefer to not fix it, as we said v2.1 strict the API input. And
'null' isn't valuable valid value(If port isn't provided by user, user can
just ignore this parameter.). I think we can just disable it, keep this
current behaviour as the v2.1 API behaviour.

What would you think?

Thanks
Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160307/505a7acf/attachment-0001.html>


More information about the OpenStack-dev mailing list