diff options
Diffstat (limited to 'Omni/Agent')
| -rw-r--r-- | Omni/Agent/Log.hs | 2 | ||||
| -rw-r--r-- | Omni/Agent/Worker.hs | 14 |
2 files changed, 7 insertions, 9 deletions
diff --git a/Omni/Agent/Log.hs b/Omni/Agent/Log.hs index 71a7aca..2942563 100644 --- a/Omni/Agent/Log.hs +++ b/Omni/Agent/Log.hs @@ -166,7 +166,7 @@ updateFromEntry :: LogEntry -> Status -> Status updateFromEntry LogEntry {..} s = s { statusThread = leThreadId <|> statusThread s, - statusCredits = fromMaybe (statusCredits s) (leTotalCredits <|> leCredits), + statusCredits = maybe (statusCredits s) (/ 100.0) (leTotalCredits <|> leCredits), statusTime = maybe (statusTime s) formatTime leTimestamp } diff --git a/Omni/Agent/Worker.hs b/Omni/Agent/Worker.hs index 7266162..c9a7563 100644 --- a/Omni/Agent/Worker.hs +++ b/Omni/Agent/Worker.hs @@ -19,11 +19,11 @@ import qualified System.Process as Process start :: Core.Worker -> IO () start worker = do AgentLog.init (Core.workerName worker) - AgentLog.log ("Worker starting loop for " <> Core.workerName worker) - loop worker + AgentLog.log ("Worker starting for " <> Core.workerName worker) + runOnce worker -loop :: Core.Worker -> IO () -loop worker = do +runOnce :: Core.Worker -> IO () +runOnce worker = do let repo = Core.workerPath worker AgentLog.updateActivity "Syncing tasks..." @@ -43,12 +43,10 @@ loop worker = do readyTasks <- TaskCore.getReadyTasks case readyTasks of [] -> do - AgentLog.updateActivity "No work found, sleeping..." - threadDelay (60 * 1000000) -- 60 seconds - loop worker + AgentLog.updateActivity "No work found." + AgentLog.log "No ready tasks found." (task : _) -> do processTask worker task - loop worker processTask :: Core.Worker -> TaskCore.Task -> IO () processTask worker task = do |
