Skip to content

Commit 50865c3

Browse files
ci: extend test matrix
Test with newer metrics and older cartridges to check previous patches.
1 parent e5d2eb2 commit 50865c3

File tree

11 files changed

+68
-12
lines changed

11 files changed

+68
-12
lines changed

.github/workflows/test_on_push.yaml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,27 @@ jobs:
1515
# old Tarantool versions that don't have "tuple-keydef"/"tuple-merger" support.
1616
tarantool-version: ["1.10.6", "1.10", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "2.8", "2.10"]
1717
metrics-version: [""]
18+
cartridge-version: ["2.7.8"]
1819
remove-merger: [false]
1920
include:
2021
- tarantool-version: "1.10"
21-
metrics-version: "0.12.0"
22+
metrics-version: "0.16.0"
23+
cartridge-version: "2.7.8"
2224
- tarantool-version: "2.7"
2325
remove-merger: true
24-
- tarantool-version: "2.8"
26+
cartridge-version: "2.7.8"
27+
- tarantool-version: "2.10"
2528
metrics-version: "0.1.8"
26-
- tarantool-version: "2.8"
29+
cartridge-version: "2.7.8"
30+
- tarantool-version: "2.10"
2731
metrics-version: "0.10.0"
32+
cartridge-version: "2.7.8"
33+
- tarantool-version: "1.10"
34+
cartridge-version: "1.2.0"
2835
- tarantool-version: "2.10"
2936
coveralls: true
30-
metrics-version: "0.12.0"
37+
metrics-version: "0.16.0"
38+
cartridge-version: "2.7.8"
3139
fail-fast: false
3240
# Can't install older versions on 22.04,
3341
# see https://github.com/tarantool/setup-tarantool/issues/36
@@ -49,6 +57,8 @@ jobs:
4957
run: |
5058
tarantool --version
5159
./deps.sh
60+
env:
61+
CARTRIDGE_VERSION: ${{ matrix.cartridge-version }}
5262

5363
- name: Install metrics
5464
if: matrix.metrics-version != ''

deps.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@ tarantoolctl rocks install "${LUACOV_COVERALLS_ROCKSPEC_FILE}"
2626
rm "${LUACOV_COVERALLS_ROCKSPEC_FILE}"
2727
rmdir "${TMPDIR}"
2828

29-
tarantoolctl rocks install cartridge 2.7.4
29+
CARTRIDGE_VERSION="${CARTRIDGE_VERSION:-2.7.8}"
30+
31+
tarantoolctl rocks install cartridge "$CARTRIDGE_VERSION"
3032
tarantoolctl rocks install ddl 1.6.2
3133
tarantoolctl rocks install migrations 0.4.2
3234

test/entrypoint/srv_ddl_reload.lua

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ local errors = require('errors')
88
local cartridge = require('cartridge')
99
local ddl = require('ddl')
1010

11+
local crud_utils = require('crud.utils')
12+
1113
package.preload['customers-storage'] = function()
1214
local customers_module = {
1315
sharding_func_default = function(key)
@@ -198,6 +200,11 @@ package.preload['customers-storage'] = function()
198200
}
199201
end
200202

203+
local roles_reload_allowed = nil
204+
if crud_utils.is_cartridge_hotreload_supported() then
205+
roles_reload_allowed = true
206+
end
207+
201208
local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
202209
advertise_uri = 'localhost:3301',
203210
http_port = 8081,
@@ -207,7 +214,7 @@ local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
207214
'cartridge.roles.crud-router',
208215
'cartridge.roles.crud-storage',
209216
},
210-
roles_reload_allowed = true,
217+
roles_reload_allowed = roles_reload_allowed,
211218
})
212219

213220
if not ok then

test/entrypoint/srv_reload.lua

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@ local log = require('log')
77
local errors = require('errors')
88
local cartridge = require('cartridge')
99

10-
local roles_reload_allowed = nil
11-
if not os.getenv('TARANTOOL_FORBID_HOTRELOAD') then
12-
roles_reload_allowed = true
13-
end
10+
local crud_utils = require('crud.utils')
1411

1512
package.preload['customers-storage'] = function()
1613
return {
@@ -44,6 +41,11 @@ package.preload['customers-storage'] = function()
4441
}
4542
end
4643

44+
local roles_reload_allowed = nil
45+
if crud_utils.is_cartridge_hotreload_supported() then
46+
roles_reload_allowed = true
47+
end
48+
4749
local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
4850
advertise_uri = 'localhost:3301',
4951
http_port = 8081,
@@ -53,7 +55,7 @@ local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
5355
'cartridge.roles.crud-router',
5456
'cartridge.roles.crud-storage'
5557
},
56-
roles_reload_allowed = roles_reload_allowed
58+
roles_reload_allowed = roles_reload_allowed,
5759
})
5860

5961
if not ok then

test/entrypoint/srv_stats.lua

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ local log = require('log')
77
local errors = require('errors')
88
local cartridge = require('cartridge')
99

10+
local crud_utils = require('crud.utils')
11+
1012
package.preload['customers-storage'] = function()
1113
local engine = os.getenv('ENGINE') or 'memtx'
1214
return {
@@ -44,6 +46,11 @@ package.preload['customers-storage'] = function()
4446
}
4547
end
4648

49+
local roles_reload_allowed = nil
50+
if crud_utils.is_cartridge_hotreload_supported() then
51+
roles_reload_allowed = true
52+
end
53+
4754
local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
4855
advertise_uri = 'localhost:3301',
4956
http_port = 8081,
@@ -53,7 +60,7 @@ local ok, err = errors.pcall('CartridgeCfgError', cartridge.cfg, {
5360
'cartridge.roles.crud-storage',
5461
'customers-storage',
5562
},
56-
roles_reload_allowed = true,
63+
roles_reload_allowed = roles_reload_allowed,
5764
})
5865

5966
if not ok then

test/entrypoint/srv_vshard_custom.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ local errors = require('errors')
88
local cartridge = require('cartridge')
99
local ddl = require('ddl')
1010

11+
local crud_utils = require('crud.utils')
12+
1113
package.preload['customers-storage'] = function()
1214
return {
1315
role_name = 'customers-storage',

test/helper.lua

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ local digest = require('digest')
88
local fio = require('fio')
99

1010
local crud = require('crud')
11+
local crud_utils = require('crud.utils')
1112

1213
if os.getenv('DEV') == nil then
1314
os.setenv('DEV', 'ON')
@@ -567,4 +568,8 @@ function helpers.is_metrics_0_12_0_or_older()
567568
return false
568569
end
569570

571+
function helpers.is_cartridge_hotreload_supported()
572+
return crud_utils.is_cartridge_hotreload_supported()
573+
end
574+
570575
return helpers

test/integration/cfg_test.lua

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ group.test_package_reload_preserves_values = function(g)
7070
end
7171

7272
group.test_role_reload_preserves_values = function(g)
73+
t.skip_if(not helpers.is_cartridge_hotreload_supported(),
74+
"Cartridge roles reload is not supported")
75+
7376
local router = g.cluster:server('router')
7477

7578
-- Generate some non-default values.

test/integration/ddl_sharding_info_reload_test.lua

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,11 @@ for sharding_case_name, sharding_case in pairs(sharding_cases) do
303303
reload_case_name, sharding_case_name)
304304

305305
pgroup_storage[test_name] = function(g)
306+
t.skip_if(
307+
((reload_case == 'reload_roles')
308+
and not helpers.is_cartridge_hotreload_supported()),
309+
"Cartridge roles reload is not supported")
310+
306311
local storage = g.cluster:server('s1-master')
307312

308313
-- Init the cache.

test/integration/reload_test.lua

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ g.after_each(function()
7777
end)
7878

7979
function g.test_router()
80+
t.skip_if(not helpers.is_cartridge_hotreload_supported(),
81+
"Cartridge roles reload is not supported")
82+
8083
g.highload_fiber = fiber.new(highload_loop, 'A')
8184

8285
g.cluster:retrying({}, function()
@@ -99,6 +102,9 @@ function g.test_router()
99102
end
100103

101104
function g.test_storage()
105+
t.skip_if(not helpers.is_cartridge_hotreload_supported(),
106+
"Cartridge roles reload is not supported")
107+
102108
g.highload_fiber = fiber.new(highload_loop, 'B')
103109

104110
g.cluster:retrying({}, function()

0 commit comments

Comments
 (0)