Handle IpAddressGenerationClient neutron

Handles IpAddressGenerationClient neutron exception which
can occur when allocating a floating ip fails because
the pool has been exhausted. Convert the exception
to a nova NoMoreFloatingIps exception which will be handled
by the api layer and converted to a 404.

Change-Id: Ib5320a13b5cc0c493ef0763d0e2b4575dc699bdf
Partial-Bug: 1210598
Change exception type from HTTPBadRequest to HTTPForbidden

When user without admin permission wants to get a list of servers
which are in 'deleted' state, currently it raises  HTTPBadRequest.
This should be changed to HTTPForbidden exception.

Change-Id: I29da5f055c69e8aba66ffb068a3601ae69b2fc94
Closes-Bug: #1281904
Updated from global requirements

Change-Id: I3296b2f6a12681199e35f05c288132347429eec3
Automatically create groups that do not exist

If the scheduler hint 'group' is specified and the contents are not a
UUID, automatically create the group.  This is to maintain backwards
compatibility with the old behavior of the 'group' scheduler hint.

The policy on this automatically created group is set as 'legacy'.
That way the scheduler knows that for this group it should emulate the
old group behavior for backwards compat purposes.

Partial-bug: #1296913

Change-Id: I0d4315980af7e47ae97dd4277784a74f086c8825
Add new style instance group scheduler filters

Prior to Icehouse, there was a different type of handling of the
'group' scheduler hint that got lost in the completion of the server
groups API.  This patch completes the code necessary to provide
backwards compatibility with the old behavior.

Previously, the policy for groups was simply based on what scheduler
filters you had enabled.  You could have either the affinity or
anti-affinity filter enabled and that would be applied to all groups.
These filters now act on groups with a policy type of 'legacy'.

New filters have been added that can be enabled simultaneously and act
based on the policy set on the group via the server group API.

DocImpact

Change-Id: Ia65c151396415ca48725cb3c756f33efa01d2fe5
Closes-bug: #1296913
Merge "Automatically create groups that do not exist"
Fix the section name in CONTRIBUTING.rst

The name of the section 'if you'are developer...' has changed
in the wiki. This commit updates it to correctly refer to
the good section.

Change-Id: I76767250b45e2550ac1601349a562a7641d41fc3
Add a note about deprecated group filters

The deprecated group filters do not work if both are enabled at the
same time.  Add this in a note in the docs on the different scheduler
filters.

DocImpact
Related-bug: #1296913

Change-Id: Ic0e1b8b59c8a462e193dffb3b0f873d8aa35aa3c
Merge "Updated from global requirements"
Merge "Add new style instance group scheduler filters"
Remove zmq-receiver from setup.cfg

In commit 1a91aac we removed the zmq-receiver script (in favor of
oslo-messaging-zmq-receiver) but forgot to remove the entry from
setup.cfg.

Closes-Bug: #1279739
Change-Id: Icd08a5b28daee7234abd24ba502c56cc00abcb8c
Merge "Handle IpAddressGenerationClient neutron"
Merge "Change exception type from HTTPBadRequest to HTTPForbidden"
Merge "Add a note about deprecated group filters"
Merge "Remove zmq-receiver from setup.cfg"
Merge "Fix the section name in CONTRIBUTING.rst"