Safe HaskellNone



Generic code to work with jobs, e.g. submit jobs and check their status.



type Annotator = OpCode -> MetaOpCode Source #

A simple type alias for clearer signature.

execWithCancel :: Annotator -> String -> [([[OpCode]], String)] -> IO (Result ()) Source #

Prepares to run a set of jobsets with handling of signals and early termination.

submitJobs :: [[MetaOpCode]] -> Client -> IO (Result [JobId]) Source #

Submits a set of jobs and returns their job IDs without waiting for completion.

execJobsWait Source #


:: [[MetaOpCode]]

The list of jobs

-> ([JobId] -> IO ())

Post-submission callback

-> Client

The Luxi client

-> IO (Result [(JobId, JobStatus)]) 

Executes a set of jobs and waits for their completion, returning their status.

waitForJobs :: [JobId] -> Client -> IO (Result [(JobId, JobStatus)]) Source #

Polls a set of jobs at an increasing interval until all are finished one way or another.

execJobsWaitOk :: [[MetaOpCode]] -> Client -> IO (Result ()) Source #

Execute jobs and return Ok only if all of them succeeded.