Skip to content

Commit

Permalink
πŸ”€ Merge pull request #246 from resque/appraisal
Browse files Browse the repository at this point in the history
βœ… Test different versions of resque and redis
  • Loading branch information
nevans authored May 16, 2024
2 parents 1327cd2 + 64735fb commit 54d305c
Show file tree
Hide file tree
Showing 19 changed files with 272 additions and 138 deletions.
54 changes: 49 additions & 5 deletions .github/workflows/ruby.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,73 @@
name: CI

on: [push, pull_request, workflow_dispatch]
on: [push, workflow_dispatch]

jobs:
build:
name: >-
${{ matrix.os }} ${{ matrix.ruby-version }}
ruby ${{ matrix.ruby }}, resque ${{ matrix.resque }}, redis ${{ matrix.redis }}, ${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
os: [ ubuntu-22.04, ubuntu-20.04 ]
ruby-version: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1", "3.2", "3.3" ]
os: [ ubuntu-22.04 ]
ruby: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1", "3.2", "3.3" ]
resque: [ "1.22", "1.23", "1.24", "1.25", "1.26", "1.27", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6" ]

include:
- { resque: "1.22", redis: "2.0" }
- { resque: "1.23", redis: "3.0" }
- { resque: "1.24", redis: "3.0" }
- { resque: "1.25", redis: "3.0" }
- { resque: "1.26", redis: "3.2" }
- { resque: "1.27", redis: "3.3" }
- { resque: "2.0", redis: "4.0" }
- { resque: "2.1", redis: "4.4" }
- { resque: "2.2", redis: "4.6" }
- { resque: "2.3", redis: "4.7" }
- { resque: "2.4", redis: "4.8" }
- { resque: "2.5", redis: "5.0" }
- { resque: "2.6", redis: "5.2" }

- os: ubuntu-20.04
ruby: "3.3"
resque: "2.6"
redis: "5.2"

exclude:
# The resque 1.22 gemfile seems to be okay with ruby 3.2 and 3.3
- { resque: "1.23", ruby: "3.2" } # unknown incompatibility...
- { resque: "1.23", ruby: "3.3" } # unknown incompatibility...
- { resque: "1.24", ruby: "3.2" } # unknown incompatibility...
- { resque: "1.24", ruby: "3.3" } # unknown incompatibility...
- { resque: "1.25", ruby: "3.2" } # unknown incompatibility...
- { resque: "1.25", ruby: "3.3" } # unknown incompatibility...
- { resque: "1.26", ruby: "3.2" } # unknown incompatibility...
- { resque: "1.26", ruby: "3.3" } # unknown incompatibility...

- { resque: "2.1", ruby: "3.0" } # redis-namespace 1.7 requires ruby < 3
- { resque: "2.1", ruby: "3.1" } # redis-namespace 1.7 requires ruby < 3
- { resque: "2.1", ruby: "3.2" } # redis-namespace 1.7 requires ruby < 3
- { resque: "2.1", ruby: "3.3" } # redis-namespace 1.7 requires ruby < 3

- { resque: "2.5", ruby: "2.4" } # redis 5.0 requires ruby 2.5
- { resque: "2.6", ruby: "2.4" } # redis 5.2 requires ruby 2.6
- { resque: "2.6", ruby: "2.5" } # redis 5.2 requires ruby 2.6

services:
redis:
image: redis

env:
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/resque_${{ matrix.resque }}_redis_${{ matrix.redis }}.gemfile

steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- run: sudo apt-get install redis-server
- name: Run specs
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
pkg/*
*.gem
*.gemfile.lock
Gemfile.lock
.bundle
.ruby-version
*.log
*.pid
examples/tmp/*
spec/stdout
tmp/*
vendor
tags
77 changes: 77 additions & 0 deletions Appraisals
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
appraise "resque-1.22-redis-2.0" do
gem "resque", "1.22.0" # 2012-08-21
gem "redis-namespace", "1.0.3" # 2011-05-17
gem "redis", "2.2.2" # 2011-08-04
end

appraise "resque-1.23-redis-2.0" do
gem "resque", "1.23.1" # 2013-03-07
gem "redis-namespace", "1.1.0" # 2011-08-15
gem "redis", "2.2.2" # 2011-08-04
end

appraise "resque-1.24-redis-3.0" do
gem "resque", "1.24.0" # 2013-03-21
gem "redis-namespace", "1.2.2" # 2013-08-03
gem "redis", "3.0.7" # 2014-01-21
end

appraise "resque-1.25-redis-3.0" do
gem "resque", "1.25.2" # 2014-03-04
gem "redis-namespace", "1.4.1" # 2013-12-04
gem "redis", "3.0.7" # 2014-01-21
end

appraise "resque-1.26-redis-3.2" do
gem "resque", "1.26.0" # 2016-03-11
gem "redis-namespace", "1.5.2" # 2015-03-30
gem "redis", "3.2.2" # 2015-11-16
end

appraise "resque-1.27-redis-3.3" do
gem "resque", "1.27.4" # 2017-04-15
gem "redis-namespace", "1.6.0" # 2017-11-03
gem "redis", "3.3.5" # 2017-09-28
end

appraise "resque-2.0-redis-4.0" do
gem "resque", "2.0.0" # 2018-11-06
gem "redis-namespace", "1.6.0" # 2017-11-03
gem "redis", "4.0.3" # 2018-10-31
end

appraise "resque-2.1-redis-4.4" do
gem "resque", "2.1.0" # 2021-08-10
gem "redis-namespace", "1.7.0" # 2019-12-11
gem "redis", "4.4.0" # 2021-07-28
end

appraise "resque-2.2-redis-4.6" do
gem "resque", "2.2.1" # 2022-03-27
gem "redis-namespace", "1.8.2" # 2022-03-07
gem "redis", "4.6.0" # 2024-02-02
end

appraise "resque-2.3-redis-4.7" do
gem "resque", "2.3.0" # 2022-08-22
gem "redis-namespace", "1.9.0" # 2022-08-13
gem "redis", "4.7.1" # 2022-07-01
end

appraise "resque-2.4-redis-4.8" do
gem "resque", "2.4.0" # 2022-09-06
gem "redis-namespace", "1.9.0" # 2022-08-13
gem "redis", "4.8.1" # 2023-02-10
end

appraise "resque-2.5-redis-5.0" do
gem "resque", "2.5.0" # 2023-03-01
gem "redis-namespace", "1.10.0" # 2022-12-22
gem "redis", "5.0.8" # 2023-08-23
end

appraise "resque-2.6-redis-5.2" do
gem "resque", "2.6.0" # 2023-08-19
gem "redis-namespace", "1.11.0" # 2023-06-08
gem "redis", "5.2.0" # 2024-04-15
end
2 changes: 2 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
source "https://rubygems.org"

gemspec

gem "appraisal"
133 changes: 0 additions & 133 deletions Gemfile.lock

This file was deleted.

10 changes: 10 additions & 0 deletions gemfiles/resque_1.22_redis_2.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.22.0"
gem "redis-namespace", "1.0.3"
gem "redis", "2.2.2"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.23_redis_2.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.23.1"
gem "redis-namespace", "1.1.0"
gem "redis", "2.2.2"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.23_redis_3.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.23.1"
gem "redis-namespace", "1.2.2"
gem "redis", "3.0.7"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.24_redis_3.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.24.0"
gem "redis-namespace", "1.2.2"
gem "redis", "3.0.7"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.25_redis_3.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.25.2"
gem "redis-namespace", "1.4.1"
gem "redis", "3.0.7"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.26_redis_3.2.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.26.0"
gem "redis-namespace", "1.5.2"
gem "redis", "3.2.2"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_1.27_redis_3.3.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "1.27.4"
gem "redis-namespace", "1.6.0"
gem "redis", "3.3.5"

gemspec path: "../"
10 changes: 10 additions & 0 deletions gemfiles/resque_2.0_redis_4.0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "appraisal"
gem "resque", "2.0.0"
gem "redis-namespace", "1.6.0"
gem "redis", "4.0.3"

gemspec path: "../"
Loading

0 comments on commit 54d305c

Please sign in to comment.