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

31 lines
969 B
Python

import time
import os
from core.execution.operation import buildOperation
from core.execution.action import buildAction
from core.execution.executioncontract import executeContract
#sleeptime = int(os.environ.get("REFRESH_INTERVAL", 180))
def manageLifecycle(module, lifecycles): #lifecycles, state):
outputs = {}
if lifecycles[module.name]["mode"] == "continuous":
while lifecycles[module.name]["mode"] == "continuous":
outputs, response = executeContract(module, outputs)
lifecycle_log = bool(os.environ.get("LOGS_LIFECYCLE", False))
if lifecycle_log:
print(f"{module.name} thread {lifecycles[module.name][module.name]} running in {lifecycles[module.name]['mode']} mode")
time.sleep(module.sleeptime)
elif lifecycles[module.name]["mode"] == "oneshot":
print(lifecycles)
outputs, response = executeContract(module)
#print(lifecycles)
return