-
Notifications
You must be signed in to change notification settings - Fork 30
82 lines (75 loc) · 2.41 KB
/
compatibility-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
name: Compatibility Test
on:
push:
paths-ignore:
- 'rst/**'
- '.github/workflows/*-translation.yml'
workflow_dispatch:
env:
# Skip building frontend in tarantoolctl rocks make
CMAKE_DUMMY_WEBUI: true
jobs:
compatibility:
strategy:
fail-fast: false
matrix:
tarantool: ['1.10']
cartridge: ['1.2.0', '2.3.0', '2.4.0', '2.5.1', '2.6.0']
downgrade: [null]
include:
- tarantool: '1.10'
cartridge: '2.8.6'
downgrade: true
- tarantool: '1.10'
cartridge: '2.9.0'
downgrade: true
- tarantool: '1.10'
cartridge: '2.10.0'
downgrade: true
- tarantool: '1.10'
cartridge: '2.11.0'
downgrade: true
- tarantool: '1.10'
cartridge: '2.12.0'
downgrade: true
- tarantool: '2.11'
cartridge: '2.12.0'
downgrade: true
runs-on: ubuntu-20.04
env:
CARTRIDGE_OLDER_PATH: cartridge-${{ matrix.cartridge }}
CARTRIDGE_OLDER_VERSION: ${{ matrix.cartridge }}-1
CARTRIDGE_DOWNGRADE: ${{ matrix.downgrade }}
steps:
- uses: actions/checkout@v4
- uses: tarantool/setup-tarantool@v3
with:
tarantool-version: '${{ matrix.tarantool }}'
# Setup older cartridge for compatibility.cartridge_upgrade_test
- name: Cache ${{ env.CARTRIDGE_OLDER_PATH }}
id: cache-older-cartridge
uses: actions/cache@v4
with:
path: ${{ env.CARTRIDGE_OLDER_PATH }}
key: ${{ env.CARTRIDGE_OLDER_PATH }}
- name: Install ${{ env.CARTRIDGE_OLDER_PATH }}
if: steps.cache-older-cartridge.outputs.cache-hit != 'true'
run: |
mkdir -p ${{ env.CARTRIDGE_OLDER_PATH }}
pushd ${{ env.CARTRIDGE_OLDER_PATH }}
tarantoolctl rocks install cartridge ${{ env.CARTRIDGE_OLDER_VERSION }}
popd
# Setup luatest
- name: Cache rocks
uses: actions/cache@v4
id: cache-rocks
with:
path: .rocks/
key: compat-rocks-${{ hashFiles('*.rockspec') }}-03
-
run: tarantoolctl rocks install luatest 1.0.1
if: steps.cache-rocks.outputs.cache-hit != 'true'
- run: tarantoolctl rocks make
- run: .rocks/bin/luatest -v -p compatibility.*
# Cleanup cached paths
- run: tarantoolctl rocks remove cartridge