← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1420192] Re: Nova interface-attach command has optional arguments to add network details. It should be positional arguments otherwise command fails.

 

Hi Park, the nova part of this bug is about nova api stack tracing when
it receives interface attachment parameters. It is not yet fixed. The
os-interface api should validate the request or otherwise check return
values and raise an appropriate exception instead.

Excerpt of example request:

http://10.0.2.15:8774/v2/46d0d928a3814510ab6ab8f65380381b/servers
/37c084fb-ecea-4a77-86f5-d2ce67be48bd/os-interface -H "User-Agent:
python-novaclient" -H "Content-Type: application/json" -H "Accept:
application/json" -H "X-Auth-Token:
{SHA1}0448c6b841247e17e04a460a1479ac16cff64903" -d
'{"interfaceAttachment": {}}'

Error in n-api.log:

2015-04-30 22:50:00.014 INFO nova.api.openstack.compute.contrib.attach_interfaces [req-6aac752c-103a-4a49-8d25-32b69bc89cf9 admin admin] [instance: 37c084fb-ecea-4a77-86f5-d2ce67be48bd] Attach interface
2015-04-30 22:50:00.014 ERROR nova.api.openstack.wsgi [req-6aac752c-103a-4a49-8d25-32b69bc89cf9 admin admin] Exception handling resource: 'NoneType' object has no attribute '__getitem__'
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi Traceback (most recent call last):
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi   File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 821, in _process_stack
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi     action_result = self.dispatch(meth, request, action_args)
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi   File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 911, in dispatch
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi     return method(req=request, **action_args)
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi   File "/opt/stack/nova/nova/api/openstack/compute/contrib/attach_interfaces.py", line 145, in create
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi     return self.show(req, server_id, vif['id'])
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi TypeError: 'NoneType' object has no attribute '__getitem__'
2015-04-30 22:50:00.014 TRACE nova.api.openstack.wsgi


** Changed in: nova
       Status: Fix Released => Confirmed

** Changed in: nova
     Assignee: Park (jianlonghei) => (unassigned)

-- 
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/1420192

Title:
  Nova interface-attach command has optional arguments to add network
  details. It should be positional arguments otherwise command fails.

Status in OpenStack Compute (Nova):
  Confirmed
Status in Python client library for Nova:
  Confirmed

Bug description:
  On execution of nova interface-attach command without optional
  arguments command fails.

  root@ubuntu:~# nova interface-attach vm1
  ERROR (ClientException): Failed to attach interface (HTTP 500) (Request-ID: req-ebca9af6-8d2f-4f68-8a80-ad002b03c2fc)
  root@ubuntu:~# 

  To add a network interface atleast one amongst the optional arguments
  must be provided. Thus, help message needs to be modified.

  root@ubuntu:~# nova help interface-attach
  usage: nova interface-attach [--port-id <port_id>] [--net-id <net_id>]
                               [--fixed-ip <fixed_ip>]
                               <server>

  Attach a network interface to a server.

  Positional arguments:
    <server>               Name or ID of server.

  Optional arguments:
    --port-id <port_id>    Port ID.
    --net-id <net_id>      Network ID
    --fixed-ip <fixed_ip>  Requested fixed IP.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1420192/+subscriptions