Public bug reported:

If operator does not set 'node_staging_uri' in glance-api.conf then
importing image using web-download remains in queued state.

Steps to reproduce:
1. Ensure glance-api is running under mod_wsgi (add WSGI_MODE=mod_wsgi in 
local.conf and run stack.sh)
2. Do not set node_staging_uri in glance-api.conf

3. Create image using below curl command:
curl -i -X POST -H "x-auth-token: <auth-token>" 
http://192.168.0.13:9292/v2/images -d 
'{"container_format":"bare","disk_format":"raw","name":"Import web-download"}'

4. Import image using below curl command:
curl -i -X POST -H "Content-type: application/json" -H "x-auth-token: 
<auth-token>" 
http://192.168.0.13:9292/v2/images/<id-of-image-created-in-step-3>/import -d 
'{"method":{"name":"web-download","uri":"https://www.openstack.org/assets/openstack-logo/2016R/OpenStack-Logo-Horizontal.eps.zip"}}'

Expected result:
Image should be in active state.

Actual result:
Image remains in queued state.

API Logs:
Mar 07 09:26:07 ubuntu-16 glance-api[3499]: DEBUG glance_store.backend [-] 
Attempting to import store file {{(pid=3506) _load_store 
/usr/local/lib/python2.7/dist-packages/glance_store/backend.py:231}}
Mar 07 09:26:07 ubuntu-16 glance-api[3499]: DEBUG glance_store.capabilities [-] 
Store glance_store._drivers.filesystem.Store doesn't support updating dynamic 
storage capabilities. Please overwrite 'update_capabilities' method of the 
store to implement updating logics if needed. {{(pid=3506) update_capabilities 
/usr/local/lib/python2.7/dist-packages/glance_store/capabilities.py:97}}
Mar 07 09:26:07 ubuntu-16 glance-api[3499]: Traceback (most recent call last):
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/eventlet/greenpool.py", line 82, in 
_spawn_n_impl
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     func(*args, **kwargs)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/notifier.py", line 581, in run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     super(TaskProxy, 
self).run(executor)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/__init__.py", line 438, in run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
executor.begin_processing(self.task_id)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 144, in 
begin_processing
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     super(TaskExecutor, 
self).begin_processing(task_id)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/__init__.py", line 63, in begin_processing
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self._run(task_id, task.type)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 165, in _run
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     flow = self._get_flow(task)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 134, in _get_flow
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     invoke_kwds=kwds).driver
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/driver.py", line 61, in 
__init__
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
warn_on_missing_entrypoint=warn_on_missing_entrypoint
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/named.py", line 81, in 
__init__
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 203, in 
_load_plugins
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
self._on_load_failure_callback(self, ep, err)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 195, in 
_load_plugins
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements,
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/named.py", line 158, in 
_load_one_plugin
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements,
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 227, in 
_load_one_plugin
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     obj = plugin(*invoke_args, 
**invoke_kwds)
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/flows/api_image_import.py", line 323, in 
get_flow
Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     file_uri = 
separator.join((CONF.node_staging_uri, str(image_id)))
Mar 07 09:26:07 ubuntu-16 glance-api[3499]: UnboundLocalError: local variable 
'separator' referenced before assignment

** Affects: glance
     Importance: Undecided
     Assignee: Abhishek Kekane (abhishek-kekane)
         Status: New

** Changed in: glance
     Assignee: (unassigned) => Abhishek Kekane (abhishek-kekane)

** Summary changed:

- 500 Error for web-download if node_staging_uri is not set 
+ Image remains in queued state for web-download if node_staging_uri is not set

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Glance.
https://bugs.launchpad.net/bugs/1753964

Title:
  Image remains in queued state for web-download if node_staging_uri is
  not set

Status in Glance:
  New

Bug description:
  If operator does not set 'node_staging_uri' in glance-api.conf then
  importing image using web-download remains in queued state.

  Steps to reproduce:
  1. Ensure glance-api is running under mod_wsgi (add WSGI_MODE=mod_wsgi in 
local.conf and run stack.sh)
  2. Do not set node_staging_uri in glance-api.conf

  3. Create image using below curl command:
  curl -i -X POST -H "x-auth-token: <auth-token>" 
http://192.168.0.13:9292/v2/images -d 
'{"container_format":"bare","disk_format":"raw","name":"Import web-download"}'

  4. Import image using below curl command:
  curl -i -X POST -H "Content-type: application/json" -H "x-auth-token: 
<auth-token>" 
http://192.168.0.13:9292/v2/images/<id-of-image-created-in-step-3>/import -d 
'{"method":{"name":"web-download","uri":"https://www.openstack.org/assets/openstack-logo/2016R/OpenStack-Logo-Horizontal.eps.zip"}}'

  Expected result:
  Image should be in active state.

  Actual result:
  Image remains in queued state.

  API Logs:
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]: DEBUG glance_store.backend [-] 
Attempting to import store file {{(pid=3506) _load_store 
/usr/local/lib/python2.7/dist-packages/glance_store/backend.py:231}}
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]: DEBUG glance_store.capabilities 
[-] Store glance_store._drivers.filesystem.Store doesn't support updating 
dynamic storage capabilities. Please overwrite 'update_capabilities' method of 
the store to implement updating logics if needed. {{(pid=3506) 
update_capabilities 
/usr/local/lib/python2.7/dist-packages/glance_store/capabilities.py:97}}
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]: Traceback (most recent call last):
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/eventlet/greenpool.py", line 82, in 
_spawn_n_impl
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     func(*args, **kwargs)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/notifier.py", line 581, in run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     super(TaskProxy, 
self).run(executor)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/proxy.py", line 238, in run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self.base.run(executor)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/domain/__init__.py", line 438, in run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
executor.begin_processing(self.task_id)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 144, in 
begin_processing
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     super(TaskExecutor, 
self).begin_processing(task_id)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/__init__.py", line 63, in begin_processing
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     self._run(task_id, task.type)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 165, in _run
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     flow = self._get_flow(task)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/taskflow_executor.py", line 134, in _get_flow
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     invoke_kwds=kwds).driver
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/driver.py", line 61, in 
__init__
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
warn_on_missing_entrypoint=warn_on_missing_entrypoint
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/named.py", line 81, in 
__init__
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 203, in 
_load_plugins
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     
self._on_load_failure_callback(self, ep, err)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 195, in 
_load_plugins
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements,
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/named.py", line 158, in 
_load_one_plugin
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     verify_requirements,
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 227, in 
_load_one_plugin
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     obj = plugin(*invoke_args, 
**invoke_kwds)
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:   File 
"/opt/stack/glance/glance/async/flows/api_image_import.py", line 323, in 
get_flow
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]:     file_uri = 
separator.join((CONF.node_staging_uri, str(image_id)))
  Mar 07 09:26:07 ubuntu-16 glance-api[3499]: UnboundLocalError: local variable 
'separator' referenced before assignment

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to