OpenStack Compute (Nova)
Go to file
Matt Riedemann 01dd1a05a2 Add regression test for server filtering by tags bug 1682693
There was a latent bug in the DB API code such that when we
process filters when listing instances, the various tags
filters have their values popped out of the filters dict and
the values (which are lists) for the filter also have the
first item in the list popped out to build the query.

This latent bug was exposed in Newton when we started listing
instances in the API from both cell0 and the main cell database,
because the query to cell0 would pop an item and then it
would not be in the 2nd query to the main cell database. If we
only had one tag in the filter list, we get an IndexError on
the 2nd pop() call.

Note that we also use the build_requests table in the API to
list instances, but there would not be any tagged servers in
that table since a server has to be ACTIVE before you can tag it,
and build_requests only exist until the instance is put into a
cell and starts building there (so it won't be ACTIVE yet).

Change-Id: I65bdfadd406368775c794ee4d8a16302a8a134bc
Related-Bug: #1682693
2017-04-17 11:34:09 -04:00
api-guide/source Removes unnecessary utf-8 encoding 2016-12-20 10:27:01 +07:00
api-ref/source Merge "api-ref: networks is mandatory in Create Server" 2017-04-12 15:31:15 +00:00
contrib Merge "changed quantum to neutron in vif-openstack" 2014-03-05 10:45:05 +00:00
devstack Add exclusion list for tempest for a libvirt+xen job 2017-03-27 17:33:37 +01:00
doc Merge "Add server-action-removefloatingip.json file and update servers-actions.inc" 2017-04-07 18:34:30 +00:00
etc/nova Fix doc generation warnings 2017-02-24 17:43:08 +00:00
gate move gate hooks to gate/ 2017-01-04 11:05:16 +00:00
nova Add regression test for server filtering by tags bug 1682693 2017-04-17 11:34:09 -04:00
placement-api-ref/source [placement] Split api-ref topics per file 2017-03-24 20:09:17 +03:00
plugins/xenserver XenAPI Remove useless files when use os-xenapi lib 2017-01-10 18:06:17 -08:00
releasenotes Update network metadata type field for IPv6 2017-04-12 13:55:13 +00:00
tools Merge "Structure for simply managing placement-api-ref" 2017-03-24 20:17:52 +00:00
.coveragerc Remove nova/openstack/* from .coveragerc 2016-10-12 16:20:49 -04:00
.gitignore Structure for simply managing placement-api-ref 2017-03-24 15:15:53 +03:00
.gitreview Add .gitreview config file for gerrit. 2011-10-24 15:07:19 -04:00
.mailmap Add mailmap entry 2014-05-07 12:14:26 -07:00
.testr.conf [placement] Adjust the name of the gabbi tests 2016-09-20 19:14:44 +00:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:37 +00:00
HACKING.rst Enable global hacking checks and removed local checks 2017-02-10 15:09:37 +01:00
LICENSE initial commit 2010-05-27 23:05:26 -07:00
MAINTAINERS Add a maintainers file 2015-05-23 03:22:07 +10:00
README.rst Optimize the link address 2017-04-07 08:56:37 +08:00
babel.cfg Get rid of distutils.extra. 2012-02-08 19:30:39 -08:00
bindep.txt List system dependencies for running common tests 2016-08-24 06:49:32 +02:00
requirements.txt Updated from global requirements 2017-04-13 16:27:09 +00:00
setup.cfg Merge "Remove domains *-log-* from compile_catalog" 2017-04-10 17:11:33 +00:00
setup.py Updated from global requirements 2017-03-02 11:50:48 +00:00
test-requirements.txt Merge "remove flake8-import-order for test requirements" 2017-03-21 17:55:02 +00:00
tests-functional-py3.txt Remove invalid URL in gabbi tests 2017-01-17 21:10:45 +00:00
tests-py3.txt Skip unit tests for SSL + py3 2017-03-02 14:30:16 +08:00
tox.ini Merge "remove flake8-import-order" 2017-04-11 17:11:35 +00:00

README.rst

Team and repository tags

image

OpenStack Nova

OpenStack Nova provides a cloud computing fabric controller, supporting a wide variety of compute technologies, including: libvirt (KVM, Xen, LXC and more), Hyper-V, VMware, XenServer and OpenStack Ironic.

OpenStack Nova is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.

API

To learn how to use Nova's API, consult the documentation available online at:

https://developer.openstack.org/api-guide/compute/ https://developer.openstack.org/api-ref/compute/

For more information on OpenStack APIs, SDKs and CLIs, please see:

https://www.openstack.org/appdev/ https://developer.openstack.org/

Operators

To learn how to deploy and configure OpenStack Nova, consult the documentation available online at:

https://docs.openstack.org

For information about the different compute (hypervisor) drivers supported by Nova, please read:

https://docs.openstack.org/developer/nova/feature_classification.html

In the unfortunate event that bugs are discovered, they should be reported to the appropriate bug tracker. If you obtained the software from a 3rd party operating system vendor, it is often wise to use their own bug tracker for reporting problems. In all other cases use the master OpenStack bug tracker, available at:

https://bugs.launchpad.net/nova

Developers

For information on how to contribute to Nova, please see the contents of the CONTRIBUTING.rst.

Any new code must follow the development guidelines detailed in the HACKING.rst file, and pass all unit tests.

Further developer focused documentation is available at:

https://docs.openstack.org/developer/nova/