Don't use deprecated module commands

The commands module was deprecated since version 2.6 and it has been
removed in Python 3. Use the subprocess module instead.
See http://docs.python.org/2/library/commands#module-commands

Closes-Bug: #1248216
Change-Id: I0a89dbba374a28b16a6e24f2a1b05ce06e044de4
Add eclipse project files to .gitignore

Like some of the other projects (nova, heat, oslo, cinder) git ignore
eclipse project files. This will remove manual steps for people
developing from eclipse.

Change-Id: Ib908c8d419072b440f5ec647bea8f13b97e48f7c
Merge "Add eclipse project files to .gitignore"
Verify for duplicate location+metadata instances

Glance allow users to have duplicated locations for the same image. This
could led to some confusion and bad UX. This patch introduces such check
in the insert method and makes both extend and append use it to add new
images.

The patch also adds a new exception - DuplicateLocation - and handles it
in the v2 of the API. When `DuplicateLocation` is raised, a BadRequest
will be returned back to the client.

A new test for this functionality was added as well.

Change-Id: I32400d467408e3d56bbbdbb3379357f2ee812e56
Closes-bug: 1251244
Enable F40X checking

Clean up imports due to F401 and F403 checks.
F401  'module' imported but unused
F403  unable to detect undefined names with wildcard import

Change-Id: I487edb157de1a6babc7ad8a3fb65f195e476c490
Merge "Verify for duplicate location+metadata instances"
Remove unused package in requirement.txt

This patch is similar to https://bugs.launchpad.net/glance/+bug/1252344.

Currently wsgiref/passlib package exist in requirement.txt,
but I confirmed that they are unused in glance source by "grep" command.

I removed them to clean up.

Closes-bug: #1255826
Change-Id: Ibbc2f1d413efacd0c18ba16c9250ef08470667d1
Use assertEqual instead of assertEquals in unit tests

The method assertEquals has been deprecated since python 2.7.
http://docs.python.org/2/library/unittest.html#deprecated-aliases
Also in Python 3, a deprecated warning is raised when using assertEquals
therefore we should use assertEqual instead.

Change-Id: Ic8f152766d70146300b74f3803d7dab1e4de50e2
Closes-Bug: #1256734
Fix docstring on detail in glance/api/v1/images.py

"Returns detailed information for all public, available images" is
inappropriate on detail, because the private image can be returned also.

Change-Id: Ib173a6813cb70270866476368ffa1ccbb77047aa
Closes-Bug: #1256217
Clean up duplicate code in v2.image_data.py

glance/api/v2/image_data.py:ImageDataController.upload has two identical
"except exception.StorageFull as e" clauses. One should be removed.

Fixes bug #1256207

Change-Id: I42fc5126e493591045d09ffb9abbc4816e63ef60
Merge "Clean up duplicate code in v2.image_data.py"
Replace deprecated method assertEquals

TestCase.assertEquals is deprecated since Python 2.7, so need use new
method name assertEqual.
See http://docs.python.org/2/library/unittest.html#deprecated-aliases

Change-Id: Iae9074f2afe2a572b60f6192aa6c871db42360ec
Merge "Don't use deprecated module commands"
DB migration changes to support DB2 as sqlalchemy backend

Implements bp db2-database

SQLAlchemy works in general, only changes needed to allow DB2
backend are these migration updates. The main difference
with DB2 is around index creation and constraints updates.

Change-Id: If5aa371328ef49ec93029ed15993871cfe5522cd
Merge "Enable F40X checking"
Merge "Replace deprecated method assertEquals"
Merge "Use assertEqual instead of assertEquals in unit tests"
Merge "DB migration changes to support DB2 as sqlalchemy backend"
Merge "Remove unused package in requirement.txt"