Skip to content

Commit 5250369

Browse files
authored
restore no-mri rubies (#412)
1 parent e81aadf commit 5250369

File tree

8 files changed

+184
-29
lines changed

8 files changed

+184
-29
lines changed

.github/workflows/ci_jruby.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
name: CI Jruby
3+
4+
on:
5+
push:
6+
branches:
7+
- master
8+
pull_request:
9+
branches:
10+
- master
11+
12+
jobs:
13+
rspec:
14+
runs-on: ubuntu-latest
15+
services:
16+
mysql:
17+
image: mysql/mysql-server
18+
ports:
19+
- "3306:3306"
20+
env:
21+
MYSQL_ROOT_PASSWORD: root
22+
MYSQL_DATABASE: closure_tree_test
23+
MYSQL_ROOT_HOST: '%'
24+
postgres:
25+
image: 'postgres'
26+
ports: ['5432:5432']
27+
env:
28+
POSTGRES_PASSWORD: postgres
29+
POSTGRES_DB: closure_tree_test
30+
options: >-
31+
--health-cmd pg_isready
32+
--health-interval 10s
33+
--health-timeout 5s
34+
--health-retries 5
35+
36+
strategy:
37+
fail-fast: false
38+
matrix:
39+
rails:
40+
- activerecord_7.0
41+
- activerecord_6.1
42+
adapter:
43+
- 'sqlite3:///:memory:'
44+
- mysql2://root:root@0/closure_tree_test
45+
- postgres://closure_tree:closure_tree@0/closure_tree_test
46+
47+
steps:
48+
- name: Checkout
49+
uses: actions/checkout@v3
50+
51+
- name: Setup Ruby
52+
uses: ruby/setup-ruby@v1
53+
with:
54+
ruby-version: jruby
55+
bundler-cache: true
56+
rubygems: latest
57+
env:
58+
BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
59+
RAILS_ENV: test
60+
61+
- name: RSpec
62+
env:
63+
RAILS_VERSION: ${{ matrix.rails }}
64+
DB_ADAPTER: ${{ matrix.adapter }}
65+
BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
66+
WITH_ADVISORY_LOCK_PREFIX: ${{ github.run_id }}
67+
run: bin/rake

.github/workflows/ci_truffleruby.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
---
2+
name: CI Truffleruby
3+
4+
on:
5+
push:
6+
branches:
7+
- master
8+
pull_request:
9+
branches:
10+
- master
11+
12+
jobs:
13+
rspec:
14+
runs-on: ubuntu-latest
15+
services:
16+
mysql:
17+
image: mysql/mysql-server
18+
ports:
19+
- "3306:3306"
20+
env:
21+
MYSQL_ROOT_PASSWORD: root
22+
MYSQL_DATABASE: closure_tree_test
23+
MYSQL_ROOT_HOST: '%'
24+
postgres:
25+
image: 'postgres'
26+
ports: ['5432:5432']
27+
env:
28+
POSTGRES_PASSWORD: postgres
29+
POSTGRES_DB: closure_tree_test
30+
options: >-
31+
--health-cmd pg_isready
32+
--health-interval 10s
33+
--health-timeout 5s
34+
--health-retries 5
35+
36+
strategy:
37+
fail-fast: false
38+
matrix:
39+
ruby:
40+
- truffleruby
41+
rails:
42+
- activerecord_7.0
43+
- activerecord_6.1
44+
- activerecord_6.0
45+
adapter:
46+
- 'sqlite3:///:memory:'
47+
- mysql2://root:root@0/closure_tree_test
48+
- postgres://closure_tree:closure_tree@0/closure_tree_test
49+
50+
steps:
51+
- name: Checkout
52+
uses: actions/checkout@v3
53+
54+
- name: Setup Ruby
55+
uses: ruby/setup-ruby@v1
56+
with:
57+
ruby-version: truffleruby
58+
bundler-cache: true
59+
rubygems: latest
60+
env:
61+
BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
62+
RAILS_ENV: test
63+
64+
- name: RSpec
65+
env:
66+
RAILS_VERSION: ${{ matrix.rails }}
67+
DB_ADAPTER: ${{ matrix.adapter }}
68+
BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
69+
WITH_ADVISORY_LOCK_PREFIX: ${{ github.run_id }}
70+
run: bin/rake

Rakefile

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,18 @@ RSpec::Core::RakeTask.new(:spec) do |task|
88
task.pattern = 'spec/closure_tree/*_spec.rb'
99
end
1010

11-
task default: [:spec, :test]
11+
task default: %i[spec test]
1212

1313
namespace :spec do
1414
desc 'Run all spec variants'
1515
task :all do
1616
rake = 'bin/rake'
17-
fail unless system("#{rake} spec:generators")
1817

19-
[['', ''], ['db_prefix_', ''], ['', '_db_suffix'], ['abc_', '_123']].each do |prefix, suffix|
18+
[['', ''], ['db_prefix_', ''], ['', '_db_suffix'], %w[abc_ _123]].each do |prefix, suffix|
2019
env = "DB_PREFIX=#{prefix} DB_SUFFIX=#{suffix}"
21-
fail unless system("#{rake} spec #{env}")
20+
raise unless system("#{rake} spec #{env}")
2221
end
2322
end
24-
25-
desc 'Run generator specs'
26-
RSpec::Core::RakeTask.new(:generators) do |task|
27-
task.pattern = 'spec/generators/*_spec.rb'
28-
end
2923
end
3024

3125
Rake::TestTask.new do |t|
@@ -35,13 +29,14 @@ Rake::TestTask.new do |t|
3529
t.verbose = true
3630
end
3731

38-
require 'github_changelog_generator/task'
39-
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
40-
config.user = 'ClosureTree'
41-
config.project = 'closure_tree'
42-
config.issues = false
43-
config.future_release = '5.2.0'
44-
config.since_tag = 'v7.4.0'
32+
if RUBY_ENGINE == 'ruby'
33+
require 'github_changelog_generator/task'
34+
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
35+
config.user = 'ClosureTree'
36+
config.project = 'closure_tree'
37+
config.issues = false
38+
config.future_release = '5.2.0'
39+
config.since_tag = 'v7.4.0'
40+
end
4541
end
46-
47-
task :default => "spec:all"
42+
task default: 'spec:all'

gemfiles/activerecord_6.0.gemfile

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
source "https://rubygems.org"
44

5-
gem "bump", "~> 0.10.0"
6-
gem "github_changelog_generator", "~> 1.16"
75
gem "activerecord", "~> 6.0.0"
86

7+
platforms :mri do
8+
group :development do
9+
gem "bump", "~> 0.10.0"
10+
gem "github_changelog_generator", "~> 1.16"
11+
end
12+
end
13+
914
platforms :ruby do
1015
gem "mysql2"
1116
gem "pg"

gemfiles/activerecord_6.1.gemfile

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
source "https://rubygems.org"
44

5-
gem "bump", "~> 0.10.0"
6-
gem "github_changelog_generator", "~> 1.16"
75
gem "activerecord", "~> 6.1.0"
86

7+
platforms :mri do
8+
group :development do
9+
gem "bump", "~> 0.10.0"
10+
gem "github_changelog_generator", "~> 1.16"
11+
end
12+
end
13+
914
platforms :ruby do
1015
gem "mysql2"
1116
gem "pg"

gemfiles/activerecord_7.0.gemfile

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
source "https://rubygems.org"
44

5-
gem "bump", "~> 0.10.0"
6-
gem "github_changelog_generator", "~> 1.16"
75
gem "activerecord", "~> 7.0.0"
86

7+
platforms :mri do
8+
group :development do
9+
gem "bump", "~> 0.10.0"
10+
gem "github_changelog_generator", "~> 1.16"
11+
end
12+
end
13+
914
platforms :ruby do
1015
gem "mysql2"
1116
gem "pg"

gemfiles/activerecord_edge.gemfile

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
source "https://rubygems.org"
44

5-
gem "bump", "~> 0.10.0"
6-
gem "github_changelog_generator", "~> 1.16"
75
gem "activerecord", github: "rails/rails"
86

7+
platforms :mri do
8+
group :development do
9+
gem "bump", "~> 0.10.0"
10+
gem "github_changelog_generator", "~> 1.16"
11+
end
12+
end
13+
914
platforms :ruby do
1015
gem "mysql2"
1116
gem "pg"

spec/spec_helper.rb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# frozen_string_literal: true
22

3-
require 'simplecov'
3+
44
require 'database_cleaner'
55
require 'closure_tree/test/matcher'
66
require 'tmpdir'
@@ -13,8 +13,11 @@
1313

1414

1515
# Start Simplecov
16-
SimpleCov.start do
17-
add_filter 'spec/'
16+
if RUBY_ENGINE == 'ruby'
17+
require 'simplecov'
18+
SimpleCov.start do
19+
add_filter '/spec/'
20+
end
1821
end
1922

2023
ActiveRecord::Base.configurations = {

0 commit comments

Comments
 (0)