From 9e6f5fa34cff3fae0456e145262cf26a104982ad Mon Sep 17 00:00:00 2001
From: Alexey Protsenko <a.protsenko@picodata.io>
Date: Tue, 29 Nov 2022 18:33:37 +0300
Subject: [PATCH] ci: shrink gitlab-ci.yml

---
 .gitlab-ci.yml | 66 +++++++-------------------------------------------
 1 file changed, 9 insertions(+), 57 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f2b490d749..01593f80ee 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -176,8 +176,7 @@ test:
         echo "Skip saving cache on a non-master branch"
       fi
 
-pack-centos:
-  stage: pack-centos
+.pack:
   tags:
     - shell
   only:
@@ -196,33 +195,21 @@ pack-centos:
     - git describe --long
     - echo $VER_TNT
   timeout: 2h
+  dependencies: []
+
+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
   artifacts:
     paths:
       - build/picodata*.rpm
-  dependencies: []
 
 pack-ubuntu:
-  tags:
-    - shell
   stage: pack-ubuntu
-  only:
-    - web
-    - tags
-  before_script:
-    - git submodule update --init --recursive
-    - git clone https://github.com/packpack/packpack.git packpack
-    - pushd tarantool-sys;
-    - 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
-  timeout: 2h
+  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
@@ -230,62 +217,27 @@ pack-ubuntu:
     paths:
       - build_focal/*.deb
       - build_jammy/*.deb
-  dependencies: []
 
 pack-debian:
-  tags:
-    - shell
   stage: pack-debian
-  only:
-    - web
-    - tags
-  before_script:
-    - git submodule update --init --recursive
-    - git clone https://github.com/packpack/packpack.git packpack
-    - pushd tarantool-sys;
-    - 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
-  timeout: 2h
+  extends: .pack
   script:
     - OS=debian DIST=bullseye PRESERVE_ENVVARS=VER_TNT BUILDDIR=$PWD/build_debian/ RELEASE=${DIST} packpack/packpack
   artifacts:
     paths:
       - build_debian/*.deb
-  dependencies: []
 
 pack-altlinux:
   stage: pack-altlinux
-  tags:
-    - shell
-  only:
-    - web
-    - tags
+  extends: .pack
   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
     - sed -i 's/sudo yum-builddep -y \$<$/sudo yum-builddep -y $< || true/g' packpack/pack/rpm.mk
-    - pushd tarantool-sys;
-    - 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
-  timeout: 2h
   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
   artifacts:
     paths:
       - build/picodata*.rpm
-  dependencies: []
 
 sign-rpm-packages:
   variables:
-- 
GitLab