Files
rmmanager/core/execution/action/action.py
T

26 lines
731 B
Python

from core.apirequest import executeRequest
from core.runtime.runtimecontract import buildRuntimeAttr, buildPreRuntimeAttr
def buildAction (action, outputs):
outputs, resolved, match, filter = buildPreRuntimeAttr(action, outputs)
if hasattr(action, "allowaction"):
if not action.allowaction:
return outputs, None
if match:
if hasattr(action, "depends"):
outputs["stopsignals"].append(action.alias)
return outputs, None#resolved
response, outputs = executeRequest(action, outputs, resolved)
if response is None:
return outputs, None
outputs, response = buildRuntimeAttr(action, outputs, resolved, response)
return outputs, response