Skip to content

Commit 7a1dd7a

Browse files
committed
EE -> CE: squash-merge of accumulated changes from ee
1 parent 419296e commit 7a1dd7a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+1979
-164
lines changed

.github/workflows/check_on_push.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ jobs:
99
if: |
1010
github.event_name == 'push' ||
1111
github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository
12-
runs-on: ubuntu-20.04
12+
runs-on: ubuntu-22.04
1313
steps:
1414
- uses: actions/checkout@master
1515

1616
- name: Setup Tarantool CE
17-
uses: tarantool/setup-tarantool@v2
17+
uses: tarantool/setup-tarantool@v4
1818
with:
19-
tarantool-version: '2.10'
19+
tarantool-version: '2.11'
2020

2121
- name: Setup tt
2222
run: |

.github/workflows/push_rockspec.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ jobs:
1414
version-check:
1515
# We need this job to run only on push with tag.
1616
if: ${{ github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') }}
17-
runs-on: ubuntu-20.04
17+
runs-on: ubuntu-22.04
1818
steps:
1919
- name: Check module version
2020
uses: tarantool/actions/check-module-version@master
2121
with:
2222
module-name: 'crud'
2323

2424
push-scm-rockspec:
25-
runs-on: ubuntu-20.04
25+
runs-on: ubuntu-22.04
2626
if: github.ref == 'refs/heads/master'
2727
steps:
2828
- uses: actions/checkout@master
@@ -33,7 +33,7 @@ jobs:
3333
files: ${{ env.ROCK_NAME }}-scm-1.rockspec
3434

3535
push-tagged-rockspec:
36-
runs-on: ubuntu-20.04
36+
runs-on: ubuntu-22.04
3737
if: startsWith(github.ref, 'refs/tags')
3838
needs: version-check
3939
steps:

.github/workflows/reusable_test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ on:
1111

1212
jobs:
1313
run_tests:
14-
runs-on: ubuntu-20.04
14+
runs-on: ubuntu-22.04
1515

1616
steps:
1717
- name: Clone the crud module
@@ -40,7 +40,7 @@ jobs:
4040
- name: Install requirements
4141
run: ./deps.sh
4242
env:
43-
VSHARD_VERSION: "0.1.26"
43+
VSHARD_VERSION: "0.1.36"
4444

4545
# This server starts and listen on 8084 port that is used for tests
4646
- name: Stop Mono server

.github/workflows/test_on_push.yaml

Lines changed: 18 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -11,50 +11,27 @@ jobs:
1111
github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository
1212
strategy:
1313
matrix:
14-
# We need 1.10.6 here to check that module works with
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.
20-
tarantool-version: ["1.10.6", "1.10", "2.8", "2.10", "2.11"]
14+
tarantool-version: ["2.11"]
2115
metrics-version: [""]
22-
cartridge-version: ["2.8.0"]
16+
cartridge-version: ["2.16.3"]
2317
external-tuple-merger-version: [""]
2418
external-tuple-keydef-version: [""]
2519
include:
26-
- tarantool-version: "1.10"
27-
metrics-version: "1.0.0"
28-
cartridge-version: "2.8.0"
29-
- tarantool-version: "2.7"
30-
cartridge-version: "2.8.0"
31-
- tarantool-version: "2.10"
32-
metrics-version: "0.10.0"
33-
cartridge-version: "2.7.9"
3420
- tarantool-version: "2.11"
3521
coveralls: true
36-
metrics-version: "1.0.0"
37-
cartridge-version: "2.8.0"
38-
- tarantool-version: "2.11"
39-
metrics-version: "1.0.0"
40-
vshard-version: "0.1.25"
4122
- tarantool-version: "2.11"
4223
external-merger-version: "0.0.5"
4324
external-keydef-version: "0.0.4"
44-
- tarantool-version: "3.0.0"
45-
vshard-version: "0.1.25"
25+
- tarantool-version: "3.3.2"
4626
- tarantool-version: "master"
47-
vshard-version: "0.1.26"
4827
fail-fast: false
49-
# Can't install older versions on 22.04,
50-
# see https://github.com/tarantool/setup-tarantool/issues/36
51-
runs-on: ubuntu-20.04
28+
runs-on: ubuntu-22.04
5229
steps:
5330
- uses: actions/checkout@master
5431

5532
- name: Setup Tarantool CE (1.x, 2.x)
5633
if: ${{ startsWith( matrix.tarantool-version, '1.' ) || startsWith( matrix.tarantool-version, '2.' ) }}
57-
uses: tarantool/setup-tarantool@v2
34+
uses: tarantool/setup-tarantool@v4
5835
with:
5936
tarantool-version: ${{ matrix.tarantool-version }}
6037

@@ -150,20 +127,20 @@ jobs:
150127
github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository
151128
strategy:
152129
matrix:
153-
tarantool-version: ["1.10", "2.11"]
154-
metrics-version: ["1.0.0"]
155-
cartridge-version: ["2.8.0"]
130+
tarantool-version: ["2.11"]
131+
metrics-version: ["1.5.0"]
132+
cartridge-version: ["2.16.3"]
156133
include:
157134
- tarantool-version: "3.0.0"
158-
vshard-version: "0.1.25"
135+
vshard-version: "0.1.36"
159136
fail-fast: false
160-
runs-on: ubuntu-20.04
137+
runs-on: ubuntu-22.04
161138
steps:
162139
- uses: actions/checkout@master
163140

164141
- name: Setup Tarantool CE (1.x, 2.x)
165142
if: ${{ startsWith( matrix.tarantool-version, '1.' ) || startsWith( matrix.tarantool-version, '2.' ) }}
166-
uses: tarantool/setup-tarantool@v2
143+
uses: tarantool/setup-tarantool@v4
167144
with:
168145
tarantool-version: ${{ matrix.tarantool-version }}
169146

@@ -238,20 +215,18 @@ jobs:
238215
strategy:
239216
matrix:
240217
tarantool-version:
241-
- folder: "1.10"
242-
bundle: "tarantool-enterprise-sdk-1.10.15-0-r609"
243218
- folder: "2.11"
244-
bundle: "tarantool-enterprise-sdk-nogc64-2.11.2-0-r609.linux.x86_64"
245-
metrics-version: ["", "1.0.0"]
246-
cartridge-version: ["2.8.0"]
219+
bundle: "tarantool-enterprise-sdk-nogc64-2.11.7-0-r691.linux.x86_64"
220+
metrics-version: ["1.5.0"]
221+
cartridge-version: ["2.16.3"]
247222
include:
248223
- tarantool-version:
249-
folder: "3.0"
250-
bundle: "tarantool-enterprise-sdk-gc64-3.0.0-0-gf58f7d82a-r23.linux.x86_64"
251-
vshard-version: "0.1.25"
224+
folder: "3.3"
225+
bundle: "tarantool-enterprise-sdk-gc64-3.3.2-0-r62.linux.x86_64"
226+
vshard-version: "0.1.36"
252227

253228
fail-fast: false
254-
runs-on: ubuntu-20.04
229+
runs-on: ubuntu-22.04
255230
steps:
256231
- uses: actions/checkout@master
257232

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ luacov.stats.out
1111
build/*.cmake
1212
build/Makefile
1313
.idea
14+
sdk
15+
sdk-2
16+
sdk-3
1417

1518
# Vim Swap files.
1619
.*.s[a-w][a-z]

.luacheckrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
redefined = false
22
globals = {'box', 'utf8', 'checkers', '_TARANTOOL'}
33
include_files = {'**/*.lua', '*.luacheckrc', '*.rockspec'}
4-
exclude_files = {'**/*.rocks/', 'tmp/', 'tarantool-enterprise/'}
4+
exclude_files = {'**/*.rocks/', 'tmp/', 'sdk-*'}
55
max_line_length = 120
66
max_comment_line_length = 150

.luacov

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
1+
local ci_node_index = os.getenv("CI_NODE_INDEX") or ""
2+
3+
statsfile = "luacov.stats" .. ci_node_index .. ".out"
14
exclude = {
2-
'/test/',
3-
'/.rocks/',
5+
"test"
6+
}
7+
include = {
8+
"crud%/.+$",
9+
"crud.lua",
10+
"roles%/.+$",
11+
"cartridge%/.+$",
412
}

CHANGELOG.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,24 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
77

88
## [Unreleased]
99

10-
### Fixed
10+
### Changed
11+
* bumped: metrics version in rockspec
12+
* bumped: cartridge version in rockspec
13+
* Role-based model support has been implemented in CRUD (https://jira.vk.team/browse/TNTP-2177)
14+
15+
### Added
16+
* Validation of `bucket_id`. Invalid values now raise `BucketIDError`
17+
before routing. [TNTP-3536](https://jira.vk.team/browse/TNTP-3536)
1118

19+
### Fixed
20+
* Fixed compatibility with cartridge `2.16.0` ([TNTP-3598](https://jira.vk.team/browse/TNTP-3598))
21+
* `crud.schema` no longer returns TCF system space `_cdc_state`.
1222
* `crud.schema` no longer returns system space `_gc_consumers` with Tarantool 3.2+.
23+
* `crud.schema` no longer returns `tt` system space `_tt_migrations`.
1324
* Tests of `schema` with Tarantool 3.2+.
25+
* Fixed bad error handling for method `call.single`
26+
* Added support for working in 3.1 with data from 2.11, previously there was an error
27+
due to the inability to find the replicasets by name https://github.com/tarantool/crud-ee/issues/16
1428

1529
## [1.5.2] - 20-05-24
1630

@@ -22,7 +36,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
2236

2337
## [1.5.1] - 27-04-24
2438

25-
### Added
39+
### Changed
2640
* Clarify license in the rockspec (#434).
2741

2842
## [1.5.0] - 03-04-24

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright 2020-2024 crud AUTHORS: please see the AUTHORS file.
1+
Copyright 2020-2025 crud AUTHORS: please see the AUTHORS file.
22

33
Redistribution and use in source and binary forms, with or without modification,
44
are permitted provided that the following conditions are met:

Makefile

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
SHELL := /bin/bash
2+
3+
S3_TARANTOOL_SDK_3_PATH := s3://packages/enterprise/release/linux/x86_64/3.3/tarantool-enterprise-sdk-gc64-3.3.2-0-r62.linux.x86_64.tar.gz
4+
S3_TARANTOOL_SDK_2_PATH := s3://packages/enterprise/release/linux/x86_64/2.11/tarantool-enterprise-sdk-gc64-2.11.7-0-r691.linux.x86_64.tar.gz
5+
S3_ENDPOINT_URL := $(if $(S3_ENDPOINT_URL),$(S3_ENDPOINT_URL),https://hb.vkcs.cloud)
6+
7+
.rocks: sdk
8+
source ./sdk-2/env.sh && \
9+
tt rocks install luacheck 0.26.0 --only-server=sdk-2/rocks && \
10+
tt rocks install luacov 0.13.0 --only-server=sdk-2/rocks && \
11+
tt rocks install luacov-reporters 0.1.0 --only-server=sdk-2/rocks && \
12+
tt rocks install metrics 1.5.0 --only-server=sdk-2/rocks && \
13+
tt rocks install cartridge 2.16.3 --only-server=sdk-2/rocks && \
14+
tt rocks make
15+
16+
sdk-2:
17+
aws --endpoint-url "$(S3_ENDPOINT_URL)" s3 cp "$(S3_TARANTOOL_SDK_2_PATH)" .
18+
mkdir sdk-2 && tar -xvzf tarantool-enterprise-*.tar.gz -C ./sdk-2 --strip-components=1 && rm tarantool-enterprise-*.tar.gz
19+
20+
sdk-3:
21+
aws --endpoint-url "$(S3_ENDPOINT_URL)" s3 cp "$(S3_TARANTOOL_SDK_3_PATH)" .
22+
mkdir sdk-3 && tar -xvzf tarantool-enterprise-*.tar.gz -C ./sdk-3 --strip-components=1 && rm tarantool-enterprise-*.tar.gz
23+
24+
sdk: sdk-2 sdk-3
25+
source sdk-3/env.sh && \
26+
cp sdk-2/rocks/luatest-1.0.1-1.all.rock sdk-3/rocks/ && \
27+
chmod 644 sdk-3/rocks/* && \
28+
tt rocks make_manifest sdk-3/rocks
29+
30+
lint: .rocks
31+
source sdk-2/env.sh && .rocks/bin/luacheck .
32+
33+
.PHONY: test
34+
test:
35+
@if [ -z "$(SDK_TEST)" ]; then \
36+
echo "Select SDK:"; \
37+
echo "1) SDK with Tarantool 2.x"; \
38+
echo "2) SDK with Tarantool 3.x"; \
39+
read -p "Enter number (1 or 2): " choice; \
40+
case $$choice in \
41+
1) SDK_TEST=sdk-2; SDK_LABEL="SDK with Tarantool 2.x" ;; \
42+
2) SDK_TEST=sdk-3; SDK_LABEL="SDK with Tarantool 3.x" ;; \
43+
*) echo "Invalid selection" >&2; exit 1 ;; \
44+
esac; \
45+
else \
46+
if [ "$(SDK_TEST)" = "sdk-2" ]; then \
47+
SDK_LABEL="SDK with Tarantool 2.x"; \
48+
elif [ "$(SDK_TEST)" = "sdk-3" ]; then \
49+
SDK_LABEL="SDK with Tarantool 3.x"; \
50+
else \
51+
SDK_LABEL="Custom SDK ($(SDK_TEST))"; \
52+
fi; \
53+
fi; \
54+
echo "Running tests with $$SDK_LABEL..."; \
55+
source $$SDK_TEST/env.sh && \
56+
tt rocks install luatest 1.0.1 --only-server=$$SDK_TEST/rocks && \
57+
.rocks/bin/luatest -v --coverage test/
58+
59+
coverage:
60+
source sdk-2/env.sh && ./.rocks/bin/luacov -r summary && cat luacov.report.out

0 commit comments

Comments
 (0)