/opt/noc# ./noc script --debug --pretty get_interface_properties Localhost
........
EXCEPTION: <class 'ValueError'> Parameter 'interface' required
START OF TRACEBACK
------------------------------------------------------------------------
File: sa/interfaces/
base.py (Line: 386)
Function: clean
379 out[k] = param.clean(v)
380 except InterfaceTypeError as e:
381 self.raise_error("Invalid value for '%s': %s" % (k, e))
382 elif not self.truncate:
383 out[k] = value[k]
384 missed = self._required_input - set(out)
385 if missed:
386 ==> raise InterfaceTypeError("Parameter '%s' required" % missed.pop())
387 return out
388
389 def script_clean_input(self, profile, value):
390 if value is None and self.default is not None:
391 return self.default
392 if not isinstance(value, dict):
Variables:
self = <noc.sa.interfaces.base.DictParameter object at 0x7f8e052646d0>
value =
{'interfaces': [{'admin_status': 'True',
'ifindex': '1',
'interface': 'lo',
'mac': '00:00:00:00:00:00',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '2',
'interface': 'ens160',
'mac': '00:0c:29:d2:bc:61',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '3',
'interface': 'br-b8a473312ef7',
'mac': '02:42:44:5d:4c:a6',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '4',
'interface': 'docker0',
'mac': '02:42:ff:ed:ef:ec',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '6',
'interface': 'veth5350d94@if5',
'mac': '02:e8:1c:d0:09:99',
'oper_status': 'True'}]}
out =
{'interfaces': [{'admin_status': 'True',
'ifindex': '1',
'interface': 'lo',
'mac': '00:00:00:00:00:00',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '2',
'interface': 'ens160',
'mac': '00:0c:29:d2:bc:61',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '3',
'interface': 'br-b8a473312ef7',
'mac': '02:42:44:5d:4c:a6',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '4',
'interface': 'docker0',
'mac': '02:42:ff:ed:ef:ec',
'oper_status': 'True'},
{'admin_status': 'True',
'ifindex': '6',
'interface': 'veth5350d94@if5',
'mac': '02:e8:1c:d0:09:99',
'oper_status': 'True'}]}
k = 'interfaces'
param = None
missed = set()
...........................................