diff --git a/confluent_client/bin/nodelicense b/confluent_client/bin/nodelicense index 1e3024e5..0a49c9ed 100755 --- a/confluent_client/bin/nodelicense +++ b/confluent_client/bin/nodelicense @@ -91,8 +91,11 @@ def show_licenses(session): 'all'.format(noderange)): for node in res.get('databynode', {}): for license in res['databynode'][node].get('License', []): - print('{0}: {1}'.format(node, license.get('feature', - 'Unknown'))) + msg = '{0}: {1}'.format(node, license.get('feature', + 'Unknown')) + if license.get('state', 'Active') != 'Active': + msg += ' ({0})'.format(license['state']) + print(msg) def delete_license(session, licname): diff --git a/confluent_server/confluent/messages.py b/confluent_server/confluent/messages.py index 23a95625..78582f6a 100644 --- a/confluent_server/confluent/messages.py +++ b/confluent_server/confluent/messages.py @@ -1611,12 +1611,12 @@ class NTPServer(ConfluentMessage): class License(ConfluentMessage): readonly = True - def __init__(self, name=None, kvm=None, feature=None): + def __init__(self, name=None, kvm=None, feature=None, state=None): self.notnode = name is None self.desc = 'License' kv = [] - kv.append({'kvm_availability': str(kvm), 'feature': feature}) + kv.append({'kvm_availability': str(kvm), 'feature': feature, 'state': state}) if self.notnode: self.kvpairs = {'License': kv} else: diff --git a/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py b/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py index 67421ce0..e8f65a9e 100644 --- a/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py +++ b/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py @@ -1463,7 +1463,7 @@ class IpmiHandler(object): if self.op == 'delete': self.ipmicmd.delete_license(lic['name']) else: - self.output.put(msg.License(self.node, feature=lic['name'])) + self.output.put(msg.License(self.node, feature=lic['name'], state=lic.get('state', 'Active'))) def handle_description(self): dsc = self.ipmicmd.get_description() self.output.put(msg.KeyValueData(dsc, self.node)) diff --git a/confluent_server/confluent/plugins/hardwaremanagement/redfish.py b/confluent_server/confluent/plugins/hardwaremanagement/redfish.py index 9a8afa85..52004a7e 100644 --- a/confluent_server/confluent/plugins/hardwaremanagement/redfish.py +++ b/confluent_server/confluent/plugins/hardwaremanagement/redfish.py @@ -1329,7 +1329,7 @@ class IpmiHandler(object): if self.op == 'delete': self.ipmicmd.delete_license(lic['name']) else: - self.output.put(msg.License(self.node, feature=lic['name'])) + self.output.put(msg.License(self.node, feature=lic['name'], state=lic.get('state', 'Active'))) def handle_description(self): dsc = self.ipmicmd.get_description()