Bug 1023996 - glance api: using --location in swift backend will cause image to be created locally
Summary: glance api: using --location in swift backend will cause image to be created ...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-glance
Version: 4.0
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
: 5.0 (RHEL 7)
Assignee: Jon Bernard
QA Contact: Tzach Shefi
URL:
Whiteboard: storage
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-10-28 14:33 UTC by Dafna Ron
Modified: 2016-04-26 19:59 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-01-13 09:58:40 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
logs (4.29 KB, application/x-gzip)
2013-10-28 14:33 UTC, Dafna Ron
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1245514 0 None None None Never

Description Dafna Ron 2013-10-28 14:33:05 UTC
Created attachment 816821 [details]
logs

Description of problem:

I configured swift as my glance backend and my data servers do not have enough disk space. 
when I try to create an image from horizon we fail on not enough disk space. 
when I use the following command in api we succeed to create the image because its created locally. 

 glance image-create --name test --disk-format qcow2 --container-format bare --location http:XXXXX

However, we will not be able to launch an instance from it and instance will be stuck in scheduling. 

Version-Release number of selected component (if applicable):

python-glanceclient-0.10.0-1.el6ost.noarch

How reproducible:

100%

Steps to Reproduce:
1. create a setup with swift as glance backend and make sure swift data servers do not have enough disk space
2. create an image from horizon
3. create an image from cli
4. try to boot an instance from image

Actual results:

we succeed in creating the image in cli when using --location

Expected results:

if we change configuration files to work with swift (or any remote backend for that matter) we should either fail --location or re-direct to --copy-from. 

Additional info:

Comment 1 Jakub Ruzicka 2013-10-29 15:41:17 UTC
This doesn't look like glanceclient problem to me. Client doesn't know/care about glance backend, it just sends a command as instructed. If this special case should be handled in any way, it should be done in glance.

Linked upstream bug is filed about glance as well.

Also, I don't think this is a high priority bug, but I'll let the future assignee decide that.

Comment 2 Flavio Percoco 2014-01-03 14:39:41 UTC
If you don't want to use the HTTP store, you need to remove it from the `known_stores` config parameter. That will disable the store and fail if `--location http://` is used. Unfortunately, this will also make `--copy-from http://` fail.

I don't think redirection to `--copy-from` is the right thing to do. Glance is designed to use multiple stores and it's up to the user to specify into which location an image should be uploaded.

As for the issue you hit, I can't replicate it. I installed glance + swift and used `--location http://` and it just worked.

One more thing, I couldn't find in the API logs the creation of the image using `--location`, I think the log level was not low enough. Could you please use `debug = True` and `verbose = True` ?

Comment 5 Tzach Shefi 2014-01-12 08:57:33 UTC
Also unable to replicate error. 

Glance+swift (backend full), uploaded new image via --location http. 
Image created ok, instance booted up ok from image.

openstack-glance-2013.2.1-2.el6ost.noarch
openstack-swift-1.10.0-2.el6ost.noarch
openstack-swift-account-1.10.0-2.el6ost.noarch
openstack-swift-object-1.10.0-2.el6ost.noarch
openstack-swift-proxy-1.10.0-2.el6ost.noarch
openstack-selinux-0.1.3-2.el6ost.noarch
openstack-utils-2013.2-2.el6ost.noarch
openstack-swift-container-1.10.0-2.el6ost.noarch
openstack-swift-plugin-swift3-1.0.0-0.20120711git.1.el6ost.noarch

Comment 6 Flavio Percoco 2014-01-13 09:58:40 UTC
Ok, that sounds like the right behavior! Closing as won't fix since the expected result is not compliant with how glance works.


Note You need to log in before you can comment on or make changes to this bug.