34 lines
640 B
Lua
34 lines
640 B
Lua
--[[
|
|
Update job progress
|
|
|
|
Input:
|
|
KEYS[1] Job id key
|
|
KEYS[2] event stream key
|
|
KEYS[3] meta key
|
|
|
|
ARGV[1] id
|
|
ARGV[2] progress
|
|
|
|
Output:
|
|
0 - OK
|
|
-1 - Missing job.
|
|
|
|
Event:
|
|
progress(jobId, progress)
|
|
]]
|
|
local rcall = redis.call
|
|
|
|
-- Includes
|
|
--- @include "includes/getOrSetMaxEvents"
|
|
|
|
if rcall("EXISTS", KEYS[1]) == 1 then -- // Make sure job exists
|
|
local maxEvents = getOrSetMaxEvents(KEYS[3])
|
|
|
|
rcall("HSET", KEYS[1], "progress", ARGV[2])
|
|
rcall("XADD", KEYS[2], "MAXLEN", "~", maxEvents, "*", "event", "progress",
|
|
"jobId", ARGV[1], "data", ARGV[2]);
|
|
return 0
|
|
else
|
|
return -1
|
|
end
|