diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 01593f80ee1daf9224e2b52e25e7790173b6a117..1de0b699a0ebb4c6bcacf4c2e686ce0dbe1ffce7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -182,18 +182,26 @@ test:
   only:
     - web
     - tags
+  variables:
+    PRESERVE_ENVVARS: VER_TNT
+    GIT_DEPTH: 100
+    GIT_SUBMODULE_STRATEGY: recursive
   before_script:
-    - git submodule update --init --recursive
     - git clone https://github.com/packpack/packpack.git packpack
-    - sed -i "s/(id -u)/(id -u) -o/g" packpack/packpack
-    - pushd tarantool-sys;
-    - export VER_TNT=$(
+    - |
+      # Describe tarantool-sys
+      pushd tarantool-sys
+      until git describe; do git fetch --deepen 100; done
+      export VER_TNT=$(
         git describe --long |
         sed -n 's/^\([0-9\.]*\)-\([0-9]*\)-\([a-z0-9]*\)/\1.\2/p'
       );
-    - popd
-    - git describe --long
-    - echo $VER_TNT
+      echo $VER_TNT
+      popd
+    - |
+      # Describe picodata
+      until git describe; do git fetch --deepen 100; done
+      git describe --long
   timeout: 2h
   dependencies: []
 
@@ -201,8 +209,9 @@ pack-centos:
   stage: pack-centos
   extends: .pack
   script:
-    - OS=centos DIST=7 PRESERVE_ENVVARS=VER_TNT packpack/packpack
-    - OS=centos DIST=8 PRESERVE_ENVVARS=VER_TNT packpack/packpack
+    - sed -i "s/(id -u)/(id -u) -o/g" packpack/packpack
+    - OS=centos DIST=7 packpack/packpack
+    - OS=centos DIST=8 packpack/packpack
   artifacts:
     paths:
       - build/picodata*.rpm
@@ -211,8 +220,8 @@ pack-ubuntu:
   stage: pack-ubuntu
   extends: .pack
   script:
-    - OS=ubuntu DIST=focal PRESERVE_ENVVARS=VER_TNT BUILDDIR=$PWD/build_${DIST}/ RELEASE=${DIST} packpack/packpack
-    - OS=ubuntu DIST=jammy PRESERVE_ENVVARS=VER_TNT BUILDDIR=$PWD/build_${DIST}/ RELEASE=${DIST} packpack/packpack
+    - OS=ubuntu DIST=focal BUILDDIR=$PWD/build_${DIST}/ RELEASE=${DIST} packpack/packpack
+    - OS=ubuntu DIST=jammy BUILDDIR=$PWD/build_${DIST}/ RELEASE=${DIST} packpack/packpack
   artifacts:
     paths:
       - build_focal/*.deb
@@ -222,7 +231,7 @@ pack-debian:
   stage: pack-debian
   extends: .pack
   script:
-    - OS=debian DIST=bullseye PRESERVE_ENVVARS=VER_TNT BUILDDIR=$PWD/build_debian/ RELEASE=${DIST} packpack/packpack
+    - OS=debian DIST=bullseye BUILDDIR=$PWD/build_debian/ RELEASE=${DIST} packpack/packpack
   artifacts:
     paths:
       - build_debian/*.deb
@@ -230,11 +239,10 @@ pack-debian:
 pack-altlinux:
   stage: pack-altlinux
   extends: .pack
-  before_script:
-    - sed -i 's/sudo yum-builddep -y \$<$/sudo yum-builddep -y $< || true/g' packpack/pack/rpm.mk
   script:
-    - PRESERVE_ENVVARS=VER_TNT DOCKER_REPO=docker-picodata.binary.picodata.io/packpack/alt DOCKER_IMAGE=p10 packpack/packpack
-    - PRESERVE_ENVVARS=VER_TNT DOCKER_REPO=docker-picodata.binary.picodata.io/packpack/alt DOCKER_IMAGE=p9 packpack/packpack
+    - sed -i 's/sudo yum-builddep -y \$<$/sudo yum-builddep -y $< || true/g' packpack/pack/rpm.mk
+    - DOCKER_REPO=docker-picodata.binary.picodata.io/packpack/alt DOCKER_IMAGE=p10 packpack/packpack
+    - DOCKER_REPO=docker-picodata.binary.picodata.io/packpack/alt DOCKER_IMAGE=p9 packpack/packpack
   artifacts:
     paths:
       - build/picodata*.rpm