Revision ccc817a2

b/htools/Ganeti/HTools/Program/Hbal.hs
160 160

  
161 161
-- | Polls a set of jobs at a fixed interval until all are finished
162 162
-- one way or another.
163
waitForJobs :: L.Client -> [String] -> IO (Result [JobStatus])
163
waitForJobs :: L.Client -> [L.JobId] -> IO (Result [JobStatus])
164 164
waitForJobs client jids = do
165 165
  sts <- L.queryJobsStatus client jids
166 166
  case sts of
b/htools/Ganeti/Luxi.hs
31 31
  , ResultStatus(..)
32 32
  , LuxiReq(..)
33 33
  , Client
34
  , JobId
34 35
  , checkRS
35 36
  , getClient
36 37
  , closeClient
......
71 72

  
72 73
-- * Generic protocol functionality
73 74

  
75
-- | The Ganeti job type.
76
type JobId = String
77

  
74 78
$(declareSADT "QrViaLuxi"
75 79
  [ ("QRLock", 'qrLock)
76 80
  , ("QRInstance", 'qrInstance)
......
354 358
  return rval
355 359

  
356 360
-- | Specialized submitManyJobs call.
357
submitManyJobs :: Client -> [[OpCode]] -> IO (Result [String])
361
submitManyJobs :: Client -> [[OpCode]] -> IO (Result [JobId])
358 362
submitManyJobs s jobs = do
359 363
  rval <- callMethod (SubmitManyJobs jobs) s
360 364
  -- map each result (status, payload) pair into a nice Result ADT
......
371 375
             x -> Bad ("Cannot parse response from Ganeti: " ++ show x)
372 376

  
373 377
-- | Custom queryJobs call.
374
queryJobsStatus :: Client -> [String] -> IO (Result [JobStatus])
378
queryJobsStatus :: Client -> [JobId] -> IO (Result [JobStatus])
375 379
queryJobsStatus s jids = do
376 380
  rval <- callMethod (QueryJobs (map read jids) ["status"]) s
377 381
  return $ case rval of

Also available in: Unified diff