-
Notifications
You must be signed in to change notification settings - Fork 0
133 lines (111 loc) · 3.24 KB
/
ruby.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
132
133
name: Puma
on: [push, pull_request]
jobs:
build:
name: >-
${{ matrix.os }}, ${{ matrix.ruby }}
env:
CI: true
TESTOPTS: -v
runs-on: ${{ matrix.os }}
if: |
!(contains(github.event.pull_request.title, '[ci skip]')
|| contains(github.event.head_commit.message, '[ci skip]'))
strategy:
fail-fast: false
matrix:
os: [ ubuntu-18.04, macos ]
ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, head, jruby ]
steps:
- name: repo checkout
uses: actions/checkout@v2
- name: load ruby, ragel
uses: MSP-Greg/setup-ruby-pkgs@v1
with:
ruby-version: ${{ matrix.ruby }}
apt-get: ragel
brew: ragel
- name: bundle install
run: |
# update RubyGems in Ruby 2.2, bundle install
if [[ "${{ matrix.ruby }}" < "2.3" ]]; then
gem update --system 2.7.10 --no-document
fi
bundle install --jobs 4 --retry 3 --path=.bundle/puma
- name: compile
run: bundle exec rake compile
- name: test
timeout-minutes: 8
run: bundle exec rake
win32:
name: >-
${{ matrix.os }}, ${{ matrix.ruby }}
env:
CI: true
TESTOPTS: -v
runs-on: ${{ matrix.os }}
if: |
!(contains(github.event.pull_request.title, '[ci skip]')
|| contains(github.event.head_commit.message, '[ci skip]'))
strategy:
fail-fast: false
matrix:
os: [ windows-latest ]
ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, mingw ]
steps:
- name: repo checkout
uses: actions/checkout@v2
- name: load ruby, ragel, openssl
uses: MSP-Greg/setup-ruby-pkgs@v1
with:
ruby-version: ${{ matrix.ruby }}
mingw: _upgrade_ openssl ragel
- name: bundle install
run: |
# update RubyGems in Ruby 2.2, bundle install
if ('${{ matrix.ruby }}' -lt '2.3') {
gem update --system 2.7.10 --no-document
}
bundle install --jobs 4 --retry 3 --path=.bundle/puma
- name: compile
run: |
bundle exec rake compile
- name: test
timeout-minutes: 8
run: bundle exec rake
nonMRIHead:
name: >-
${{ matrix.cfg.os }}, ${{ matrix.cfg.ruby }}
env:
CI: true
TESTOPTS: -v
runs-on: ${{ matrix.cfg.os }}
if: |
!(contains(github.event.pull_request.title, '[ci skip]')
|| contains(github.event.head_commit.message, '[ci skip]'))
strategy:
fail-fast: false
matrix:
cfg:
- { os: ubuntu-latest, ruby: jruby-head }
- { os: ubuntu-latest, ruby: truffleruby-head }
steps:
- name: repo checkout
uses: actions/checkout@v2
- name: load ruby, ragel
uses: MSP-Greg/setup-ruby-pkgs@v1
with:
ruby-version: ${{ matrix.cfg.ruby }}
apt-get: ragel
brew: ragel
- name: bundle install
run: |
bundle install --jobs 4 --retry 3 --path=.bundle/puma
- name: compile
continue-on-error: true
run: bundle exec rake compile
- name: test
timeout-minutes: 8
continue-on-error: true
if: success()
run: bundle exec rake