How would I specify a continuation on a recurring job? For example, lets say I want to perform a backup once a day and after the backup has completed, I want to push some files to another server. I don’t want to do this in one step. I want one worker to perform the backup step. When complete, it should generate a new job for the file push. Then another worker can pick up the job and push the files. Is this kind of scenario possible?
I’m thinking about this. Currently you can create “push files” job in the “make backup” job.
That would work, but it would be the wrong coupling of concerns. A worker/task should have no awareness of workflow (i.e. continuation); it should simply perform the task and report back to the server. A workflow should be defined by some process that has awareness of two individual tasks and the need to perform one after the other. That process does’t necessarily know who will do the work, simply that the “work” is defined as task 1 followed by task 2. When task 1 completes, the server can generate task 2 and some worker on some other box can potentially pick it up. This decoupling would allow for maximum flexibility of the system.
Yep, I know. You can also add a wrapper method that would create a background job and its continuation and use it as a recurring job.
thanks! I’ll use that pattern for now.
should I open a bug in GitHub to track this as a feature request?
I’d also like that feature, if you have any specific idea on how to implement it I can try to develop something