Working resolver, working recursive logic with dynamic library creation
This commit is contained in:
Binary file not shown.
@@ -1,50 +1,27 @@
|
||||
import logging
|
||||
#from core import buildAction
|
||||
from core.runtime.savedata import buildSave, loadSave
|
||||
from core.runtime.logs import buildLog
|
||||
from core.runtime.outputs import buildOutput
|
||||
from core.runtime.managefailure import manageFailure
|
||||
from core.execution.action.action import buildAction
|
||||
from .skipstep import skipStep
|
||||
from core.runtime.resolver import resolveItem2
|
||||
from core.apirequest import executeRequest
|
||||
from core.runtime.skipstep import skipStep
|
||||
from core.runtime.recursiveactions import recursiveAction
|
||||
|
||||
def buildOperation(definition):
|
||||
actions = definition.actions
|
||||
#print("DEBUG", actions)
|
||||
responses = []
|
||||
outputs = {}
|
||||
#resolved = {}
|
||||
|
||||
for action in actions:
|
||||
#try:
|
||||
if hasattr(definition, "skipstep"):
|
||||
if skipStep(definition, action, outputs):
|
||||
continue
|
||||
#if hasattr(definition, "resolve"):
|
||||
#resolved = {}
|
||||
#if hasattr(action, "resolve"):
|
||||
#print(outputs)
|
||||
#resolved = resolveItem(action, outputs)
|
||||
#print(resolved)
|
||||
if hasattr(action, "recursive"):
|
||||
#outputs[action.recursive["target"]] = {}
|
||||
for item in outputs[action.recursive["source"]]:
|
||||
outputs = resolveItem2(action, item, outputs)#, resolved)
|
||||
#print("Resolved value:", outputs)
|
||||
#outputs[action.recursive["target"]] = outputs[action.recursive["source"]][][action.recursive["target"]]
|
||||
#print(outputs[action.recursive["target"]])
|
||||
outputs[action.recursive["target"]] = item
|
||||
#print(outputs[action.recursive["target"]])
|
||||
#target = outputs[action.recursive["source"]["target"]
|
||||
outputs, response = buildAction(action, outputs)#, resolved)
|
||||
#print(outputs)
|
||||
#return outputs
|
||||
|
||||
if skipStep(definition, action, outputs):
|
||||
continue
|
||||
|
||||
if action == "recursiveset":
|
||||
outputs = recursiveAction(definition, outputs)
|
||||
|
||||
else:
|
||||
outputs, response = buildAction(action, outputs)
|
||||
responses.append(response)
|
||||
|
||||
|
||||
#except Exception as error:
|
||||
#outputs = manageFailure(error, action, outputs)
|
||||
#print(outputs["message"])
|
||||
|
||||
return outputs
|
||||
|
||||
Reference in New Issue
Block a user