This ensures we do not miss events. E.g.
before:
t0: hash changes to X
t1: send webhook(X), waiting for response
t2: hash changes to Y
t3: queue next webhook(Y) but can't send because previous is not done
t4: crash
t5: restart
t6: find repo at hash Y
no webhook(Y) was sent.
after:
t0: hash changes to X
t1: send webhook(X), waiting for response
t2: hash changes to Y
t3: queue next webhook(Y) but can't send because previous is not done
t4: crash
t5: restart
t6: find repo at hash Y
t7: send webhook(Y), waiting for response
|
||
|---|---|---|
| .. | ||
| ncsvr | ||
| sshd | ||
| exechook_command.sh | ||
| exechook_command_fail.sh | ||
| exechook_command_fail_with_sleep.sh | ||
| exechook_command_with_sleep.sh | ||
| git_askpass.sh | ||
| git_slow_fetch.sh | ||