[openstack-dev] [nova] When can/should we change additionalProperties=False in GET /servers(/detail)?

Matt Riedemann mriedemos at gmail.com
Wed Sep 19 14:41:45 UTC 2018


On 9/18/2018 12:26 PM, Matt Riedemann wrote:
> On 9/17/2018 9:41 PM, Ghanshyam Mann wrote:
>>   ---- On Tue, 18 Sep 2018 09:33:30 +0900 Alex Xu<soulxu at gmail.com>  
>> wrote ----
>>   > That only means after 599276 we only have servers API and 
>> os-instance-action API stopped accepting the undefined query parameter.
>>   > What I'm thinking about is checking all the APIs, add 
>> json-query-param checking with additionalProperties=True if the API 
>> don't have yet. And using another microversion set 
>> additionalProperties to False, then the whole Nova API become consistent.
>>
>> I too vote for doing it for all other API together. Restricting the 
>> unknown query or request param are very useful for API consistency. 
>> Item#1 in this etherpadhttps://etherpad.openstack.org/p/nova-api-cleanup
>>
>> If you would like, i can propose a quick spec for that and positive 
>> response to do all together then we skip to do that in 599276 
>> otherwise do it for GET servers in 599276.
>>
>> -gmann
> 
> I don't care too much about changing all of the other 
> additionalProperties=False in a single microversion given we're already 
> kind of inconsistent with this in a few APIs. Consistency is ideal, but 
> I thought we'd be lumping in other cleanups from the etherpad into the 
> same microversion/spec which will likely slow it down during spec 
> review. For example, I'd really like to get rid of the weird server 
> response field prefixes like "OS-EXT-SRV-ATTR:". Would we put those into 
> the same mass cleanup microversion / spec or split them into individual 
> microversions? I'd prefer not to see an explosion of microversions for 
> cleaning up oddities in the API, but I could see how doing them all in a 
> single microversion could be complicated.

Just an update on https://review.openstack.org/#/c/599276/ - the change 
is approved. We left additionalProperties=True in the GET 
/servers(/detail) APIs for consistency with 2.5 and 2.26, and for 
expediency in just getting the otherwise pretty simple change approved.

-- 

Thanks,

Matt



More information about the OpenStack-dev mailing list