fix: handle errors fetching actions and vouchers from the DB #693
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fix adds error handling to the two timers that periodically query
the database: one which gets actions from the queue, and other that gets pending
vouchers. In tests, the DB tables are dropped, so the timers would throw
errors and cause tests to fail. In production whatever errors cause
a DB fetch to fail could be recoverable so the timer will keep retrying
rather than bubbling up an exception, so hopefully that is okay.
We also change CI to only build using Ubuntu 22.04
(the node 18 version has dependency issues on Ubuntu 20.04) and on
node 16 and 18 (the node 17 version was failing to download node, and is EOL).
Additionally we make CI tests and formatting check happen on all PRs, not
only the ones to main.