diff --git a/confluent_server/confluent/plugins/hardwaremanagement/enclosure.py b/confluent_server/confluent/plugins/hardwaremanagement/enclosure.py index f9c1003e..a7db7123 100644 --- a/confluent_server/confluent/plugins/hardwaremanagement/enclosure.py +++ b/confluent_server/confluent/plugins/hardwaremanagement/enclosure.py @@ -19,8 +19,15 @@ def update(nodes, element, configmanager, inputdata): emebs = configmanager.get_node_attributes( nodes, (u'enclosure.manager', u'enclosure.bay')) for node in nodes: - em = emebs[node]['enclosure.manager']['value'] - eb = emebs[node]['enclosure.bay']['value'] + try: + em = emebs[node]['enclosure.manager']['value'] + eb = emebs[node]['enclosure.bay']['value'] + except KeyError: + yield msg.ConfluentNodeError( + node, + 'Reseat is only supported on servers in an enclosure, and ' + 'with enclosure.manager and enclosure.bay defined') + continue try: for rsp in core.handle_path( '/nodes/{0}/_enclosure/reseat_bay'.format(em),