neutronclient: incorrect treatment of input parameters
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Heat |
New
|
Undecided
|
Rico Lin | ||
neutron |
Invalid
|
Undecided
|
Unassigned | ||
python-neutronclient |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Hi colleagues,
Neutron 10.0.0 (as part Ocata) on Ubuntu 16.04
Everything is ok when I use Neutron CLI to update port parameters, but when I'm doing the same using Heat, it fails.
Heat's template for the object is:
e-secgroup:
type: OS::Neutron:
properties:
name: SSH_ICMP
rules:
- direction: ingress
- protocol: tcp
- protocol: icmp
node1-wan:
type: OS::Neutron::Port
properties:
name: jadm-node1-wan
network: e-net
port_
security_
Heat makes a call to Neutron using neutronclient and provides input parameters in such way:
updating port with {'allowed_
In return, I get the following error:
2017-04-11 09:51:31.809 14474 DEBUG neutronclient.
If I explicitly set device_owner='' in Heat template, then neutronclient accepts this key-value pair and returns error for the next parameter (e.g. device_id):
2017-04-11 10:45:26.808 14474 DEBUG neutronclient.
and this affects not only parameters of OS::Neutron::Port object, but OS::Neutron:
Resource UPDATE failed: BadRequest: resources.
So, the problem is general and it seems that something wrong with treatment of 'None' in input parameters: all clients should always treat None values the same as not passing any value, while neutronclient accepts '' and refuses None.
Severity: this bug blocks using Heat.
Thank you.
tags: | added: api |
Changed in heat: | |
assignee: | nobody → Rico Lin (rico-lin) |
tags: | added: neutron-proactive-backport-potential |
tags: | removed: neutron-proactive-backport-potential |
Corresponding bug was previously opened in Heat section - https:/ /bugs.launchpad .net/heat/ +bug/1681769 - but according to Steven Hardy's comment, I reopened it here.