debian-forge-composer/internal/worker
Tom Gundersen 626530818d worker/server: requeue unresponsive jobs
If a job is unresponsive the worker has most likely crashed or been shut
down and the in-progress job been lost.

Instead of failing these jobs, requeue them up to two times. Once a job is lost
a third time it fails. This avoids infinite loops.

This is implemented by extending FinishJob to RequeuOrFinish job. It takes a
max number of requeues as an argument, and if that is 0, it has the same
behavior as FinishJob used to have.

If the maximum number of requeues has not yet been reached, then the running
job is returned to pending state to be picked up again.
2022-11-02 15:26:00 +01:00
..
api api/{cloud,worker}: used channel name based on JWT claims for new jobs 2022-03-08 12:07:00 +01:00
clienterrors osbuild-worker: add ostree resolve job 2022-10-19 18:14:10 +02:00
client.go worker: add proxy support to composer and oauth calls 2022-05-03 06:19:31 +01:00
client_test.go worker: define job types as constants 2022-06-10 14:48:18 +01:00
json.go internal/worker: add rhsm to ostree resolve job 2022-10-28 16:14:30 +02:00
json_test.go worker: Remove ellipsis operator from clienterrors.Error 2022-08-03 13:51:52 +02:00
proxy_test.go worker: add proxy support to composer and oauth calls 2022-05-03 06:19:31 +01:00
server.go worker/server: requeue unresponsive jobs 2022-11-02 15:26:00 +01:00
server_test.go osbuild-worker: add ostree resolve job 2022-10-19 18:14:10 +02:00