Files
rmmanager/core/runtime/runtimecontract.py
T

51 lines
1.4 KiB
Python

import logging
from core.runtime.stopsignals import addStopSignal
def buildPreRuntimeAttr(action, outputs, process):
from core.runtime import loadSave, readRow
from core.runtime.applyconditions import applyConditions
from core.runtime.resolver import resolveItem
loadSave(action, outputs)
resolved = resolveItem(action, outputs)
readRow(action, resolved, outputs)
match, filter = applyConditions(action, resolved, outputs)
if match:
logging.info(filter.get("print"))
addStopSignal(action, outputs, process)
return resolved, match, filter
def buildRuntimeAttr(action, outputs, resolved, response, process):
from core.runtime.resolver import extractItem
from core.runtime.responsepolicy import responsePolicy
from core.runtime.image import buildImage
from core.runtime import buildSelect, buildOutput, buildSave, saveRow, buildLog
response = responsePolicy(response, action, outputs, resolved)
buildOutput(response, action, outputs)
if not response.ok:
addStopSignal(action, outputs, process)
return outputs, response
extractItem(action, outputs, resolved)
buildImage(response, action, outputs)
buildSelect(action, outputs)
buildSave(action, outputs)
saveRow(action, outputs, resolved)
buildLog(action, outputs, response)
return response