Matt Riedemann 5657dc5006 Cleanup validation logic in _get_requested_networks
'networks' in the server request body is a list of dicts
that can take a fixed_ip, port id or network id. There are
semantic rules for the combinations of these which are checked
in the helper method _get_requested_networks. The network id
validation logic is a bit convoluted where it's placed though,
so this change cleans that up and moves it to it's own method.

Note the main difference in nesting logic. You can't request
a port and network on the same nic (dict entry in the networks
list). So the conditional logic is such that you either have a
port or a network in a single request. Before this change, the
network id validation was happening outside that conditional,
and checked a second time if port was requested before validating
the network id. Since we already have that condition, this
change moves the network id validation under the condition where
a port is not requested (so a network id must be).

There are no test changes since this is just cleaning up the code
and also shows that this doesn't change the overall results of
the validation.

Change-Id: I466f2273a4ce02279b942f7ada264a3da97dfe92
2016-05-16 10:01:12 -04:00
2016-04-28 20:40:18 +09:00
2016-05-13 16:51:23 -04:00
2016-04-06 12:51:27 -04:00
2014-05-07 12:14:26 -07:00
2014-11-12 15:31:06 -05:00
2012-02-08 19:30:39 -08:00
2010-05-27 23:05:26 -07:00
2015-05-23 03:22:07 +10:00
2014-05-07 16:06:24 -07:00
2015-09-17 16:41:48 +00:00
2016-04-20 11:25:30 -04:00

OpenStack Nova README
=====================

OpenStack Nova provides a cloud computing fabric controller,
supporting a wide variety of virtualization technologies,
including KVM, Xen, LXC, VMware, and more. In addition to
its native API, it includes compatibility with the commonly
encountered Amazon EC2 and S3 APIs.

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.

Nova primarily consists of a set of Python daemons, though
it requires and integrates with a number of native system
components for databases, messaging and virtualization
capabilities.

To keep updated with new developments in the OpenStack project
follow `@openstack <http://twitter.com/openstack>`_ on Twitter.

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

   http://docs.openstack.org

For information about the different compute (hypervisor) drivers
supported by Nova, read this page on the wiki:

   https://wiki.openstack.org/wiki/HypervisorSupportMatrix

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:

   http://bugs.launchpad.net/nova

Developers wishing to work on the OpenStack Nova project should
always base their work on the latest Nova code, available from
the master GIT repository at:

   https://git.openstack.org/cgit/openstack/nova

Developers should also join the discussion on the mailing list,
at:

   http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

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:

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

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

-- End of broadcast
S
Description
No description provided
Readme 258 MiB
Languages
Python 97.5%
Smarty 2.3%
Shell 0.2%