packages feed

wolf 0.2.11 → 0.2.12

raw patch · 2 files changed

+22/−33 lines, 2 files

Files

src/Network/AWS/Flow.hs view
@@ -77,15 +77,6 @@   logInfo' $ sformat ("event=execute uid=" % stext) uid   startWorkflowExecutionAction uid tskName tskVersion tskQueue input -serializeError :: MonadFlow m => Error -> m ()-serializeError = \case-  e@(SerializeError s) ->-    unless check $ throwM e where-      check =-        s ^. serializeStatus  == ok200 &&-        s ^. serializeAbbrev  == "SWF"-  e -> throwM e- exitCode :: RE Char Int exitCode =   many anySym *> string "exit status: " *> num <* many anySym where@@ -99,31 +90,29 @@       respondActivityTaskFailedAction token  act :: MonadFlow m => Queue -> (Uid -> Metadata -> [Blob] -> m (Metadata, [Artifact], Maybe SomeException)) -> m ()-act queue action =-  handle serializeError $ do-    logInfo' "event=act"-    (token', uid', input) <- pollForActivityTaskAction queue-    token <- maybeThrow (userError "No Token") token'-    uid <- maybeThrow (userError "No Uid") uid'-    logInfo' $ sformat ("event=act-begin uid=" % stext) uid-    maybe_ input $ logDebug' . sformat ("event=act-input " % stext)-    keys <- listObjectsAction uid-    unless (null keys) $ logInfo' $ sformat ("event=list-blobs uid=" % stext) uid-    blobs <- forM keys $ getObjectAction uid-    unless (null blobs) $ logInfo' $ sformat ("event=blobs uid=" % stext) uid-    (output, artifacts, e) <- action uid input blobs-    maybe_ output $ logDebug' . sformat ("event=act-output " % stext)-    logInfo' $ sformat ("event=act-finish uid=" % stext) uid-    forM_ artifacts $ putObjectAction uid-    unless (null artifacts) $ logInfo' $ sformat ("event=artifacts uid=" % stext) uid-    maybe (respondActivityTaskCompletedAction token output) (actException token) e+act queue action = do+  logInfo' "event=act"+  (token', uid', input) <- pollForActivityTaskAction queue+  maybe_ token' $ \token ->+    maybe_ uid' $ \uid -> do+      logInfo' $ sformat ("event=act-begin uid=" % stext) uid+      maybe_ input $ logDebug' . sformat ("event=act-input " % stext)+      keys <- listObjectsAction uid+      unless (null keys) $ logInfo' $ sformat ("event=list-blobs uid=" % stext) uid+      blobs <- forM keys $ getObjectAction uid+      unless (null blobs) $ logInfo' $ sformat ("event=blobs uid=" % stext) uid+      (output, artifacts, e) <- action uid input blobs+      maybe_ output $ logDebug' . sformat ("event=act-output " % stext)+      logInfo' $ sformat ("event=act-finish uid=" % stext) uid+      forM_ artifacts $ putObjectAction uid+      unless (null artifacts) $ logInfo' $ sformat ("event=artifacts uid=" % stext) uid+      maybe (respondActivityTaskCompletedAction token output) (actException token) e  decide :: MonadFlow m => Plan -> m ()-decide plan@Plan{..} =-  handle serializeError $ do-    logInfo' "event=decide"-    (token', events) <- pollForDecisionTaskAction (tskQueue $ strtTask plnStart)-    token <- maybeThrow (userError "No Token") token'+decide plan@Plan{..} = do+  logInfo' "event=decide"+  (token', events) <- pollForDecisionTaskAction (tskQueue $ strtTask plnStart)+  maybe_ token' $ \token -> do     logger <- asks feLogger     decisions <- runDecide logger plan events select     respondDecisionTaskCompletedAction token decisions
wolf.cabal view
@@ -1,5 +1,5 @@ name:                wolf-version:             0.2.11+version:             0.2.12 synopsis:            Amazon Simple Workflow Service Wrapper. homepage:            https://github.com/swift-nav/wolf license:             MIT