resque-pool
resque-pool copied to clipboard
Test (and CI) against multiple versions of redis and resque gems
We should be testing against a build matrix of redis and resque gems.
At the very least, we need our CI (GitHub actions) to add these gem versions into our build matrix.
I'm thinking the matrix should include: master
, at least the last three minor releases for each, and the last prior major release (if it wasn't in the last three minor releases), and any other "interesting" releases (based on new features or deprecations) that we might decide to "support". e.g. right now that would be:
- redis:
- master
- 5.0.5
- 4.8.0
- 4.7.1
- resque:
- master
- 2.4.0
- 2.3.0
- 2.2.1
Additionally, we might want to schedule a weekly test with both gem's master
.
~It would also be nice if we had a single rake task that tested every version in the matrix (sequentially). But a rake task that simply ran with any specified versions (as specified by task parameters or env vars) would be fine too.~ It's not worth complicating this issue with this scope creep. (Although a PR might be accepted. 😉)
We should be able to copy the approach used by resque-scheduler:
- https://github.com/resque/resque-scheduler/blob/121e3427d1211baf8354067321d1f1dd14c7e4a1/.github/workflows/ruby.yml#L20-L67
- https://github.com/resque/resque-scheduler/blob/121e3427d1211baf8354067321d1f1dd14c7e4a1/Gemfile#L4-L25
n.b. although I'd enjoy the rake task for running locally, I generally will only want to run the matrix in CI and I can also do what I want that with a bash one-liner. It's not worth complicating this issue with that.
Fixed by #246