Skip to content

Commit

Permalink
Test against latest Node, Ruby, Rails
Browse files Browse the repository at this point in the history
Test against:
- Node 22
- Rails 8.0
- Ruby 3.4

Additionally, allow bundler installation on Ruby 3.0

Ref: shakacode#534
  • Loading branch information
tagliala committed Dec 27, 2024
1 parent 0829d5a commit 9637e0c
Show file tree
Hide file tree
Showing 6 changed files with 53 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/dummy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
node-version: '16'
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1.2'
ruby-version: '3.4.1'
- name: Install dependencies
run: |
bundle install
Expand Down
15 changes: 14 additions & 1 deletion .github/workflows/generator.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,29 +18,42 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest]
ruby: ['2.7', '3.0', '3.1', '3.2', '3.3']
ruby: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
gemfile:
- gemfiles/Gemfile-rails.6.0.x
- gemfiles/Gemfile-rails.6.1.x
- gemfiles/Gemfile-rails.7.0.x
- gemfiles/Gemfile-rails.7.1.x
- gemfiles/Gemfile-rails.7.2.x
- gemfiles/Gemfile-rails.8.0.x
# Uncomment the following line only to ensure compatibility with the
# upcomming Rails versions, maybe before a release.
#- gemfiles/Gemfile-rails-edge
exclude:
- ruby: '2.7'
gemfile: gemfiles/Gemfile-rails.7.2.x
- ruby: '2.7'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.0'
gemfile: gemfiles/Gemfile-rails.7.2.x
- ruby: '3.0'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.1'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.1'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.2'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.3'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.3'
gemfile: gemfiles/Gemfile-rails.6.1.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.6.1.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.7.0.x

env:
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
persist-credentials: false
- uses: actions/setup-node@v4
with:
node-version: 20.x
node-version: 22.x
cache: yarn

- name: Install dependencies
Expand All @@ -35,7 +35,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest]
node: [14.x, 16.x, 18.x, 20.x]
node: [14.x, 16.x, 18.x, 20.x, 22.x]

runs-on: ${{ matrix.os }}

Expand Down
17 changes: 15 additions & 2 deletions .github/workflows/ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
run: rm -f Gemfile.lock
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
ruby-version: '3.4'
bundler-cache: true

- name: Ruby rubocop
Expand All @@ -35,29 +35,42 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest]
ruby: ['2.7', '3.0', '3.1', '3.2', '3.3']
ruby: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
gemfile:
- gemfiles/Gemfile-rails.6.0.x
- gemfiles/Gemfile-rails.6.1.x
- gemfiles/Gemfile-rails.7.0.x
- gemfiles/Gemfile-rails.7.1.x
- gemfiles/Gemfile-rails.7.2.x
- gemfiles/Gemfile-rails.8.0.x
# Uncomment the following line only to ensure compatibility with the
# upcomming Rails versions, maybe before a release.
#- gemfiles/Gemfile-rails-edge
exclude:
- ruby: '2.7'
gemfile: gemfiles/Gemfile-rails.7.2.x
- ruby: '2.7'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.0'
gemfile: gemfiles/Gemfile-rails.7.2.x
- ruby: '3.0'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.1'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.1'
gemfile: gemfiles/Gemfile-rails.8.0.x
- ruby: '3.2'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.3'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.3'
gemfile: gemfiles/Gemfile-rails.6.1.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.6.0.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.6.1.x
- ruby: '3.4'
gemfile: gemfiles/Gemfile-rails.7.0.x

env:
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
Expand Down
11 changes: 11 additions & 0 deletions gemfiles/Gemfile-rails.8.0.x
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
source "https://rubygems.org"

git_source(:github) { |repo| "https://github.com/#{repo}.git" }

gemspec path: "../"

gem "rails", '~>8.0.0'
gem "rake", ">= 11.1"
gem "rack-proxy", require: false
gem "rspec-rails", "~> 6.0.0"
gem "byebug"
11 changes: 10 additions & 1 deletion spec/generator_specs/generator_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,17 @@
bundle install
))
else
# TODO: remove when Ruby < 3.1 support will be dropped
# Ref: https://github.com/shakacode/shakapacker/issues/534
bundler_version_constraint =
if RUBY_VERSION.start_with?("3.1")
">= 2.6"
else
"< 2.6"
end

sh_in_dir({}, BASE_RAILS_APP_PATH, %(
gem update bundler
gem update bundler -v "#{bundler_version_constraint}"
bundle add shakapacker --path "#{GEM_ROOT}"
))
end
Expand Down

0 comments on commit 9637e0c

Please sign in to comment.