-
-
Notifications
You must be signed in to change notification settings - Fork 805
131 lines (125 loc) · 3.17 KB
/
test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
name: test
on:
push:
branches:
- main
pull_request:
jobs:
sqlite3:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
rails:
- 7-2-stable
- v7.1.0
- v7.0.3
- v6.1.6
ruby:
- 3.2.2
- 3.1.4
env:
DB: sqlite3
RAILS: ${{ matrix.rails }}
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
run: bundle exec rspec
mysql:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
rails:
- 7-2-stable
- v7.1.0
- v7.0.3
- v6.1.6
ruby:
- 3.2.2
- 3.1.4
env:
DB: mysql
RAILS: ${{ matrix.rails }}
MYSQL_USERNAME: root
MYSQL_PASSWORD: root
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Startup MySQL
run: |
sudo systemctl start mysql.service
- name: Setup databases
run: |
mysql --user=root --password=root --host=127.0.0.1 -e 'create database ransack collate utf8_general_ci;';
mysql --user=root --password=root --host=127.0.0.1 -e 'use ransack;show variables like "%character%";show variables like "%collation%";';
- name: Run tests
run: bundle exec rspec
postgres:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
rails:
- 7-2-stable
- v7.1.0
- v7.0.3
- v6.1.6
ruby:
- 3.2.2
- 3.1.4
env:
DB: postgres
RAILS: ${{ matrix.rails }}
DATABASE_USERNAME: postgres
DATABASE_PASSWORD: postgres
DATABASE_HOST: 127.0.0.1
services:
postgres:
image: postgres
ports:
- 5432:5432
env:
POSTGRES_PASSWORD: postgres
POSTGRES_HOST_AUTH_METHOD: trust
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Setup databases
run: |
psql -h localhost -p 5432 -W postgres -c 'create database ransack;' -U postgres;
- name: Run tests
run: bundle exec rspec
bug-report-templates:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2.2
bundler-cache: true
- name: Run bug report templates
run: |
ruby bug_report_templates/test-ransacker-arel-present-predicate.rb
ruby bug_report_templates/test-ransack-scope-and-column-same-name.rb
rm Gemfile Gemfile.lock