yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #48064
[Bug 1555656] Re: None value allowed for port parameter in legacy v2 API, but not allowed in v2.1 API
As we use the "direct-release" model in Nova we don't use the
"fix comitted" status for merged bug fixes anymore. I'm setting
this manually to "fix-released" to be consistent.
[1] "[openstack-dev] [release][all] bugs will now close automatically
when patches merge"; Doug Hellmann; 2015-12-07;
http://lists.openstack.org/pipermail/openstack-dev/2015-December/081612.html
** Changed in: nova
Status: Fix Committed => Fix Released
--
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/1555656
Title:
None value allowed for port parameter in legacy v2 API, but not
allowed in v2.1 API
Status in OpenStack Compute (nova):
Fix Released
Bug description:
In the legacy v2 API, we create server with network like this:
"networks": [{"uuid": "f4001fde-7bb8-4a73-b1a9-03b444d1f6f8", "port": null}]'
The port can be null.
With v2.1 API, you will get 400:
curl -g -i -X POST http://192.168.2.176:8774/v2.1/b90b53ed87d74e19806da34dbaa056c9/servers -H "User-Agent: python-novaclient" -H "Content-Type: application/json" -H "Accept: application/json" -H "X-Auth-Token: e740965218754560a98d9ac188271253" -d '{"server": {"name": "vm4", "imageRef": "33a713dc-7efe-488c-bf12-d902ff5e6118", "flavorRef": "1", "max_count": 1, "min_count": 1, "networks": [{"uuid": "f4001fde-7bb8-4a73-b1a9-03b444d1f6f8", "port": null}]}}'
HTTP/1.1 400 Bad Request
X-Openstack-Nova-Api-Version: 2.1
Vary: X-OpenStack-Nova-API-Version
Content-Type: application/json; charset=UTF-8
Content-Length: 117
X-Compute-Request-Id: req-c5ab91ca-dc24-42ea-8272-7f35571b15da
Date: Mon, 07 Mar 2016 13:01:58 GMT
{"badRequest": {"message": "Invalid input for field/attribute port.
Value: None. None is not a 'uuid'", "code": 400}}
This is due to we write json-schema like this:
'port': {
'type': ['string', 'null'],
format': 'uuid'
},
We assume 'type' will enable 'null' value and 'format' only against on string type. Actually 'null' will be passed to format check also, then the format check return fault.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1555656/+subscriptions
References