diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 501d5749c3b212bd0035a25e4024ccd00e240240..d521a778eca0ff73a910a6f37f210f879d355dd7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,72 +1,10 @@
 include:
   - project: "picodata/devops/ci-templates"
-    file: "all.yml"
-    ref: 0.1.1
-
-stages:
-  - test
-  - lint
-  - utility
+    file: "modules_ci.yml"
+    ref: 0.2.2
 
 variables:
-  GIT_STRATEGY: clone
   CI_IMAGE_REPOSITORY: docker-public.binary.picodata.io
-  CI_IMAGE: "${CI_IMAGE_REPOSITORY}/${CI_PROJECT_NAME}:0.1.0"
+  CI_IMAGE: "${CI_IMAGE_REPOSITORY}/${CI_PROJECT_NAME}:0.1.1"
   DOCKER_AUTH_CONFIG: $DOCKER_AUTH_RO
-  CARGO_NET_GIT_FETCH_WITH_CLI: "true"
-
-default:
-  image: $CI_IMAGE
-
-.base:
-  extends: .base_rust_cache
-  variables:
-    # variables for rust cache
-    CARGO_HOME: $CI_PROJECT_DIR/.cargo
-    SCCACHE_DIR: $CI_PROJECT_DIR/.cache/sccache
-    RUSTC_WRAPPER: sccache
-  image:
-    name: $CI_IMAGE
-    pull_policy: [always, if-not-present]
-  tags:
-    - docker
-  needs: []
-  interruptible: true
-
-int-test:
-  stage: "test"
-  extends: .base
-  script:
-    - make int-test
-
-rust-lint:
-  extends: .base
-  stage: lint
-  script:
-    - make rust-lint
-
-rust-fmt:
-  stage: lint
-  extends: .base
-  script:
-    - cargo fmt --check
-
-publish-dry-run:
-  stage: utility
-  extends: .base
-  script:
-    - make publish-dry-run
-
-publish:
-  stage: utility
-  extends: .base
-  when: manual
-  script:
-    - make publish
-  needs: [publish-dry-run]
 
-build_ci:
-  stage: utility
-  extends: .build_ci_template
-  variables:
-    DOCKER_REPOSITORY: "docker-public.binary.picodata.io"
diff --git a/Cargo.lock b/Cargo.lock
index d6cbb708489eaeab7810666b85e0989fb9b2ff08..604219ef6583005d625a6d2f41c5d92311f201f3 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -34,16 +34,15 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.3.2"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
- "is-terminal",
  "utf8parse",
 ]
 
@@ -73,12 +72,12 @@ dependencies = [
 
 [[package]]
 name = "anstyle-wincon"
-version = "1.0.1"
+version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188"
+checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
 dependencies = [
  "anstyle",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -93,7 +92,7 @@ version = "0.1.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -202,33 +201,31 @@ dependencies = [
  "clap_lex 0.2.4",
  "indexmap 1.9.3",
  "once_cell",
- "strsim",
+ "strsim 0.10.0",
  "termcolor",
  "textwrap",
 ]
 
 [[package]]
 name = "clap"
-version = "4.3.8"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9394150f5b4273a1763355bd1c2ec54cc5a2593f790587bcd6b2c947cfa9211"
+checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
 dependencies = [
  "clap_builder",
- "clap_derive 4.3.2",
- "once_cell",
+ "clap_derive 4.5.4",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.3.8"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a78fbdd3cc2914ddf37ba444114bc7765bbdcb55ec9cbe6fa054f0137400717"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
 dependencies = [
  "anstream",
  "anstyle",
- "bitflags",
- "clap_lex 0.5.0",
- "strsim",
+ "clap_lex 0.7.0",
+ "strsim 0.11.1",
 ]
 
 [[package]]
@@ -237,21 +234,21 @@ version = "3.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro-error",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.3.2"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f"
+checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
 dependencies = [
- "heck",
- "proc-macro2 1.0.63",
+ "heck 0.5.0",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -267,9 +264,9 @@ dependencies = [
 
 [[package]]
 name = "clap_lex"
-version = "0.5.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
+checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
 
 [[package]]
 name = "colorchoice"
@@ -358,9 +355,9 @@ checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
 dependencies = [
  "fnv",
  "ident_case",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
- "strsim",
+ "strsim 0.10.0",
  "syn 1.0.109",
 ]
 
@@ -584,7 +581,7 @@ version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -667,6 +664,12 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
 [[package]]
 name = "hermit-abi"
 version = "0.1.19"
@@ -758,18 +761,6 @@ dependencies = [
  "windows-sys 0.48.0",
 ]
 
-[[package]]
-name = "is-terminal"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f"
-dependencies = [
- "hermit-abi 0.3.1",
- "io-lifetimes",
- "rustix 0.37.20",
- "windows-sys 0.48.0",
-]
-
 [[package]]
 name = "itoa"
 version = "1.0.6"
@@ -821,7 +812,7 @@ version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73fd9dc7072de7168cbdaba9125e8f742cd3a965aa12bde994b4611a174488d8"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
@@ -832,7 +823,7 @@ version = "0.3.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "279a77bf40c85a08513aca203635b96610ebf0e37a92cb0cee76e04da100a426"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -923,7 +914,7 @@ version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
@@ -1035,7 +1026,7 @@ version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -1065,7 +1056,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
 dependencies = [
  "proc-macro-error-attr",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
  "version_check",
@@ -1077,7 +1068,7 @@ version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "version_check",
 ]
@@ -1093,9 +1084,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.63"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
@@ -1151,7 +1142,7 @@ version = "1.0.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
 ]
 
 [[package]]
@@ -1287,7 +1278,7 @@ version = "6.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e22ce362f5561923889196595504317a4372b84210e6e335da529a65ea5452b5"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "rust-embed-utils",
  "shellexpand",
@@ -1378,7 +1369,7 @@ version = "1.0.164"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -1490,6 +1481,12 @@ version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
+[[package]]
+name = "strsim"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
+
 [[package]]
 name = "syn"
 version = "0.15.44"
@@ -1507,7 +1504,7 @@ version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "unicode-ident",
 ]
@@ -1518,7 +1515,7 @@ version = "2.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "unicode-ident",
 ]
@@ -1602,7 +1599,7 @@ checksum = "de423e6433ccffb7d47b480f2621b9c094091a7cacdb8dd876a2e013781314c3"
 dependencies = [
  "darling",
  "proc-macro-error",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
@@ -1615,7 +1612,7 @@ checksum = "7858baff0d8ffc143a3cd8df3c608e4f4b60ff2e415580e444c7a07334f87e05"
 dependencies = [
  "darling",
  "proc-macro-error",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
@@ -1627,7 +1624,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b87c5ea878cd7171b51866b299f49f702c6c3c9c0a979968024477001f6f819f"
 dependencies = [
  "anyhow",
- "clap 4.3.8",
+ "clap 4.5.4",
  "tempfile",
 ]
 
@@ -1636,7 +1633,7 @@ name = "tarantool-test"
 version = "0.3.1"
 dependencies = [
  "anyhow",
- "clap 4.3.8",
+ "clap 4.5.4",
  "linkme 0.3.10",
  "serde",
  "serde_json",
@@ -1724,7 +1721,7 @@ version = "1.0.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -1786,7 +1783,7 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eb7956628ae61669b782605fc8ef4fee857c20227ad59548014b7b519b71b251"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 1.0.109",
 ]
@@ -1856,7 +1853,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7ea8ac818da7e746a63285594cce8a96f5e00ee31994e655bd827569cb8b137b"
 dependencies = [
  "proc-macro-error",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
 ]
@@ -1935,7 +1932,7 @@ dependencies = [
  "bumpalo",
  "log",
  "once_cell",
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
  "wasm-bindgen-shared",
@@ -1957,7 +1954,7 @@ version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
- "proc-macro2 1.0.63",
+ "proc-macro2 1.0.81",
  "quote 1.0.28",
  "syn 2.0.22",
  "wasm-bindgen-backend",
@@ -2028,6 +2025,15 @@ dependencies = [
  "windows-targets 0.48.0",
 ]
 
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
 [[package]]
 name = "windows-targets"
 version = "0.42.2"
@@ -2058,6 +2064,22 @@ dependencies = [
  "windows_x86_64_msvc 0.48.0",
 ]
 
+[[package]]
+name = "windows-targets"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
+]
+
 [[package]]
 name = "windows_aarch64_gnullvm"
 version = "0.42.2"
@@ -2070,6 +2092,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
 
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+
 [[package]]
 name = "windows_aarch64_msvc"
 version = "0.42.2"
@@ -2082,6 +2110,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
 
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+
 [[package]]
 name = "windows_i686_gnu"
 version = "0.42.2"
@@ -2094,6 +2128,18 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
 
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+
 [[package]]
 name = "windows_i686_msvc"
 version = "0.42.2"
@@ -2106,6 +2152,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
 
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+
 [[package]]
 name = "windows_x86_64_gnu"
 version = "0.42.2"
@@ -2118,6 +2170,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
 
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+
 [[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.42.2"
@@ -2130,6 +2188,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
 
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+
 [[package]]
 name = "windows_x86_64_msvc"
 version = "0.42.2"
@@ -2142,6 +2206,12 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
 
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+
 [[package]]
 name = "zip"
 version = "0.6.6"
diff --git a/Dockerfile.ci b/Dockerfile.ci
index 44e32f580223c162ed3320b2b3cb1aca4f12a87f..091dc8de6bc14e2b7de231f97070a9be4f34c2ef 100644
--- a/Dockerfile.ci
+++ b/Dockerfile.ci
@@ -7,13 +7,14 @@ RUN dnf install -y epel-release && \
     sed 's/enabled=.*/enabled=1/g' -i /etc/yum.repos.d/epel.repo && \
     dnf install -y --allowerasing git gcc cmake3 libarchive gcc-c++ wget curl \
     findutils unzip bash-completion openssl-devel libicu-devel && \
-    rpm --import https://download.picodata.io/tarantool-picodata/el/RPM-GPG-KEY-kdy && \
+    rpm --import https://download.picodata.io/tarantool-picodata/picodata.gpg.key && \
     dnf install -y https://download.picodata.io/tarantool-picodata/el/8/x86_64/picodata-release-1.1.0.11-1.el8.x86_64.rpm && \
     dnf install -y tarantool-picodata tarantool-picodata-devel && \
     dnf clean all
 
 # install rust
-RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain 1.70 -y
+RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain 1.74 -y
 ENV PATH="/kafka/bin:/root/.cargo/bin:${PATH}"
 
 RUN cargo install sccache
+
diff --git a/Makefile b/Makefile
index daaf3d7a2bf0d49951d13cce31a8a7a930759cf5..1ffa7b61bd7905f6af76238004273e451e8cbc3c 100644
--- a/Makefile
+++ b/Makefile
@@ -7,6 +7,8 @@ else
 	endif
 endif
 
+local-env:
+
 build:
 	cargo build --bin tarantool-test --features="bin"
 
@@ -21,6 +23,8 @@ run-example: build-example
 int-test: build build-example
 	cargo test -p tests
 
+test: int-test
+
 rust-lint:
 	cargo clippy --all-targets --all-features -- -D warnings
 
diff --git a/tarantool-test/Cargo.toml b/tarantool-test/Cargo.toml
index 9c6edb3a5351c202d0ea516568ef34f5d7e0ad69..08fdfc41ae861084b018aac18aa5294553e1b23f 100644
--- a/tarantool-test/Cargo.toml
+++ b/tarantool-test/Cargo.toml
@@ -1,6 +1,7 @@
 [package]
 name = "tarantool-test"
 version = "0.3.1"
+rust-version = "1.74.0"
 edition = "2021"
 description = "CLI test framework for tarantool-based Rust applications"
 readme = "README.md"
@@ -24,7 +25,7 @@ anyhow = "1"
 serde_json = { version = "1" }
 
 # Binary deps.
-clap = { version = "4", features = ["derive"], optional = true }
+clap = { version = "4.5", features = ["derive"], optional = true }
 tempfile = { version = "3", optional = true }
 tarantool-runner = { version = "0.1.0", optional = true }