mirror of
https://github.com/xcat2/confluent.git
synced 2024-11-21 17:11:58 +00:00
Add concept of defaulting plugin
This commit is contained in:
parent
97d3eebff6
commit
53ce6f054c
@ -60,9 +60,11 @@ nodeelements = {
|
||||
},
|
||||
'power/state': {
|
||||
'pluginattrs': ['hardwaremanagement.method'],
|
||||
'default': 'ipmi',
|
||||
},
|
||||
'boot/device': {
|
||||
'pluginattrs': ['hardwaremanagement.method'],
|
||||
'default': 'ipmi',
|
||||
}
|
||||
}
|
||||
|
||||
@ -71,7 +73,7 @@ def handle_path(path, operation, configmanager):
|
||||
|
||||
The plugins should generally return some sort of iterator.
|
||||
An exception is made for console/session, which should return
|
||||
a class with read(), write(bytes), and close()
|
||||
a class with connect(), read(), write(bytes), and close()
|
||||
'''
|
||||
if (path.startswith("/node/") or path.startswith("/system/") or
|
||||
# single node requests
|
||||
@ -90,6 +92,9 @@ def handle_path(path, operation, configmanager):
|
||||
return pluginmap[nodeattr[node][attrname]['value']].__dict__[operation](
|
||||
nodes=(node,), element=element,
|
||||
configmanager=configmanager)
|
||||
if plugroute['default']:
|
||||
return pluginmap[plugroute['default']].__dict__[operation](
|
||||
nodes=(node,), element=element, configmanager=configmanager)
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user