From f9d47bb0d3ac70806f09ee021a93ed4825b2f0ad Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Fri, 20 May 2022 08:35:43 -0400 Subject: [PATCH] Fix markingrequest as not implemented The Geist PDU support inadvertently took down unrelated parts of a request, fix by properly showing not implemented in a node specific way. --- .../confluent/plugins/hardwaremanagement/geist.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/confluent_server/confluent/plugins/hardwaremanagement/geist.py b/confluent_server/confluent/plugins/hardwaremanagement/geist.py index 62bac271..7490965a 100644 --- a/confluent_server/confluent/plugins/hardwaremanagement/geist.py +++ b/confluent_server/confluent/plugins/hardwaremanagement/geist.py @@ -104,7 +104,9 @@ class GeistClient(object): def retrieve(nodes, element, configmanager, inputdata): if 'outlets' not in element: - raise exc.NotImplementedException('Not implemented') + for node in nodes: + yield msg.ConfluentResourceUnavailable(node, 'Not implemented') + return for node in nodes: gc = GeistClient(node, configmanager) state = gc.get_outlet(element[-1]) @@ -112,7 +114,8 @@ def retrieve(nodes, element, configmanager, inputdata): def update(nodes, element, configmanager, inputdata): if 'outlets' not in element: - raise exc.NotImplementedException('Not implemented') + yield msg.ConfluentResourceUnavailable(node, 'Not implemented') + return for node in nodes: gc = GeistClient(node, configmanager) newstate = inputdata.powerstate(node)