From b71eaf4256a2887fa80b61760c633e0d5c37340c Mon Sep 17 00:00:00 2001 From: Bence Romsics Date: Wed, 6 Feb 2019 14:53:22 +0100 Subject: [PATCH] Exceptions for: Drive binding by placement allocation New exception types used in https://review.openstack.org/574783. Change-Id: I46d89ef6d7630ec2c44d619c022aa8bbb6e51b63 Needed-By: https://review.openstack.org/574783 Partial-Bug: #1578989 See-Also: https://review.openstack.org/502306 (nova spec) See-Also: https://review.openstack.org/508149 (neutron spec) --- neutron_lib/exceptions/placement.py | 11 +++++++++++ ...placement-binding-exceptions-6362d52391b7023e.yaml | 5 +++++ 2 files changed, 16 insertions(+) create mode 100644 releasenotes/notes/placement-binding-exceptions-6362d52391b7023e.yaml diff --git a/neutron_lib/exceptions/placement.py b/neutron_lib/exceptions/placement.py index c2f2cc001..44a951253 100644 --- a/neutron_lib/exceptions/placement.py +++ b/neutron_lib/exceptions/placement.py @@ -69,3 +69,14 @@ class PlacementResourceProviderNameNotUnique(exceptions.Conflict): class PlacementClientError(exceptions.NeutronException): message = _("Placement Client Error (4xx): %(msg)s") + + +class UnknownResourceProvider(exceptions.BadRequest): + """Resource provider not known by neutron backends.""" + message = _("No such resource provider known by Neutron: %(rsc_provider)s") + + +class AmbiguousResponsibilityForResourceProvider(exceptions.NeutronException): + """Not clear who's responsible for resource provider.""" + message = _("Expected one driver to be responsible for resource provider " + "%(rsc_provider)s, but got many: %(drivers)s") diff --git a/releasenotes/notes/placement-binding-exceptions-6362d52391b7023e.yaml b/releasenotes/notes/placement-binding-exceptions-6362d52391b7023e.yaml new file mode 100644 index 000000000..f6df3d4d9 --- /dev/null +++ b/releasenotes/notes/placement-binding-exceptions-6362d52391b7023e.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + New exception classes: ``UnknownResourceProvider`` and + ``AmbiguousResponsibilityForResourceProvider``.