13
13
matrix :
14
14
# We need 1.10.6 here to check that module works with
15
15
# old Tarantool versions that don't have "tuple-keydef"/"tuple-merger" support.
16
+ # We test old metrics with Tarantool 2.10 because since Tarantool 2.11.1
17
+ # it uses its own metrics package.
18
+ # We test old metrics with Cartridge 2.7.9 because since 2.8.0 it
19
+ # requires metrics 1.0.0.
16
20
tarantool-version : ["1.10.6", "1.10", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "2.8", "2.10", "2.11"]
17
21
metrics-version : [""]
18
22
cartridge-version : ["2.8.0"]
@@ -24,16 +28,19 @@ jobs:
24
28
- tarantool-version : " 2.7"
25
29
remove-merger : true
26
30
cartridge-version : " 2.8.0"
27
- - tarantool-version : " 2.11"
28
- metrics-version : " 0.1.8"
29
- cartridge-version : " 2.8.0"
30
- - tarantool-version : " 2.11"
31
+ - tarantool-version : " 2.10"
31
32
metrics-version : " 0.10.0"
32
- cartridge-version : " 2.8.0 "
33
+ cartridge-version : " 2.7.9 "
33
34
- tarantool-version : " 2.11"
34
35
coveralls : true
35
36
metrics-version : " 1.0.0"
36
37
cartridge-version : " 2.8.0"
38
+ - tarantool-version : " 2.11"
39
+ metrics-version : " 1.0.0"
40
+ vshard-version : " 0.1.24"
41
+ - tarantool-version : " master"
42
+ metrics-version : " 1.0.0"
43
+ vshard-version : " 0.1.24"
37
44
fail-fast : false
38
45
# Can't install older versions on 22.04,
39
46
# see https://github.com/tarantool/setup-tarantool/issues/36
@@ -42,10 +49,42 @@ jobs:
42
49
- uses : actions/checkout@master
43
50
44
51
- name : Setup Tarantool CE
52
+ if : matrix.tarantool-version != 'master'
45
53
uses : tarantool/setup-tarantool@v2
46
54
with :
47
55
tarantool-version : ${{ matrix.tarantool-version }}
48
56
57
+ - name : Setup tt
58
+ run : |
59
+ curl -L https://tarantool.io/release/2/installer.sh | sudo bash
60
+ sudo apt install -y tt
61
+ tt version
62
+
63
+ - name : Get Tarantool master latest commit
64
+ if : matrix.tarantool-version == 'master'
65
+ run : |
66
+ commit_hash=$(git ls-remote https://github.com/tarantool/tarantool.git --branch master | head -c 8)
67
+ echo "LATEST_COMMIT=${commit_hash}" >> $GITHUB_ENV
68
+ shell : bash
69
+
70
+ - name : Cache Tarantool master
71
+ if : matrix.tarantool-version == 'master'
72
+ id : cache-latest
73
+ uses : actions/cache@v3
74
+ with :
75
+ path : " ${GITHUB_WORKSPACE}/bin"
76
+ key : cache-latest-${{ env.LATEST_COMMIT }}
77
+
78
+ - name : Setup Tarantool master
79
+ if : matrix.tarantool-version == 'master' && steps.cache-latest.outputs.cache-hit != 'true'
80
+ run : |
81
+ tt init
82
+ tt install tarantool master
83
+
84
+ - name : Add Tarantool master to PATH
85
+ if : matrix.tarantool-version == 'master'
86
+ run : echo "${GITHUB_WORKSPACE}/bin" >> $GITHUB_PATH
87
+
49
88
- name : Fix luarocks in Tarantool CE 1.10.6
50
89
if : matrix.tarantool-version == '1.10.6'
51
90
run : |
@@ -57,10 +96,11 @@ jobs:
57
96
./deps.sh
58
97
env :
59
98
CARTRIDGE_VERSION : ${{ matrix.cartridge-version }}
99
+ VSHARD_VERSION : ${{ matrix.vshard-version }}
60
100
61
101
- name : Install metrics
62
102
if : matrix.metrics-version != ''
63
- run : tarantoolctl rocks install metrics ${{ matrix.metrics-version }}
103
+ run : tt rocks install metrics ${{ matrix.metrics-version }}
64
104
65
105
- name : Remove external merger if needed
66
106
if : ${{ matrix.remove-merger }}
@@ -90,23 +130,64 @@ jobs:
90
130
matrix :
91
131
tarantool-version : ["1.10", "2.11"]
92
132
metrics-version : ["1.0.0"]
133
+ cartridge-version : ["2.8.0"]
134
+ include :
135
+ - tarantool-version : " master"
136
+ metrics-version : " 1.0.0"
137
+ vshard-version : " 0.1.24"
93
138
fail-fast : false
94
139
runs-on : ubuntu-20.04
95
140
steps :
96
141
- uses : actions/checkout@master
97
142
98
143
- name : Setup Tarantool CE
144
+ if : matrix.tarantool-version != 'master'
99
145
uses : tarantool/setup-tarantool@v2
100
146
with :
101
147
tarantool-version : ${{ matrix.tarantool-version }}
102
148
149
+ - name : Setup tt
150
+ run : |
151
+ curl -L https://tarantool.io/release/2/installer.sh | sudo bash
152
+ sudo apt install -y tt
153
+ tt version
154
+
155
+ - name : Get Tarantool master latest commit
156
+ if : matrix.tarantool-version == 'master'
157
+ run : |
158
+ commit_hash=$(git ls-remote https://github.com/tarantool/tarantool.git --branch master | head -c 8)
159
+ echo "LATEST_COMMIT=${commit_hash}" >> $GITHUB_ENV
160
+ shell : bash
161
+
162
+ - name : Cache Tarantool master
163
+ if : matrix.tarantool-version == 'master'
164
+ id : cache-latest
165
+ uses : actions/cache@v3
166
+ with :
167
+ path : " ${GITHUB_WORKSPACE}/bin"
168
+ key : cache-latest-${{ env.LATEST_COMMIT }}
169
+
170
+ - name : Setup Tarantool master
171
+ if : matrix.tarantool-version == 'master' && steps.cache-latest.outputs.cache-hit != 'true'
172
+ run : |
173
+ tt init
174
+ tt install tarantool master
175
+
176
+ - name : Add Tarantool master to PATH
177
+ if : matrix.tarantool-version == 'master'
178
+ run : echo "${GITHUB_WORKSPACE}/bin" >> $GITHUB_PATH
179
+
103
180
- name : Install requirements for community
104
181
run : |
105
182
tarantool --version
106
183
./deps.sh
184
+ env :
185
+ CARTRIDGE_VERSION : ${{ matrix.cartridge-version }}
186
+ VSHARD_VERSION : ${{ matrix.vshard-version }}
107
187
108
188
- name : Install metrics
109
- run : tarantoolctl rocks install metrics ${{ matrix.metrics-version }}
189
+ if : matrix.metrics-version != ''
190
+ run : tt rocks install metrics ${{ matrix.metrics-version }}
110
191
111
192
# This server starts and listen on 8084 port that is used for tests
112
193
- name : Stop Mono server
@@ -127,6 +208,7 @@ jobs:
127
208
- folder : " 2.11"
128
209
bundle : " tarantool-enterprise-sdk-nogc64-2.11.0-0-r563.linux.x86_64"
129
210
metrics-version : ["", "1.0.0"]
211
+ cartridge-version : ["2.8.0"]
130
212
fail-fast : false
131
213
runs-on : ubuntu-20.04
132
214
steps :
@@ -138,9 +220,13 @@ jobs:
138
220
tar -xzf ${{ matrix.tarantool-version.bundle }}.tar.gz
139
221
rm -f ${{ matrix.tarantool-version.bundle }}.tar.gz
140
222
sudo cp tarantool-enterprise/tarantool /usr/bin/tarantool
223
+ sudo rm tarantool-enterprise/tt
141
224
source tarantool-enterprise/env.sh
142
225
tarantool --version
143
226
./deps.sh
227
+ env :
228
+ CARTRIDGE_VERSION : ${{ matrix.cartridge-version }}
229
+ VSHARD_VERSION : ${{ matrix.vshard-version }}
144
230
145
231
- name : Install metrics
146
232
if : matrix.metrics-version != ''
0 commit comments