From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp53.i.mail.ru (smtp53.i.mail.ru [94.100.177.113]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id E4DF343040C for ; Wed, 2 Sep 2020 13:25:39 +0300 (MSK) From: "Alexander V. Tikhonov" Date: Wed, 2 Sep 2020 13:25:36 +0300 Message-Id: <889eb7a5993813ac702095413881a8be5480e932.1599042246.git.avtikhon@tarantool.org> Subject: [Tarantool-patches] [PATCH v1] gitlab-ci: fix deployment of tagged commits List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kirill Yukhin , Alexander Turenko Cc: tarantool-patches@dev.tarantool.org Found that tagged commits were not run the deployment gitlab-ci jobs. To fix it added 'tags' label for deployment and perfomance jobs. Also found that after the commit tagged it has tag label in format 'x^0' and all previous commits till the previous tag became to have tags in format 'x~' like 'x~1' or 'x~2' and etc. So the check if git name-rev --name-only --tags --no-undefined HEAD ; then became always pass and previous commits on rerun could began to deploy. To fix it was used gitlab-ci environment variable 'CI_COMMIT_TAG', it shows in real if the current commit has tag and has to be deployed. Part of #3745 --- Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-3745-gitlab-ci-tags Issue: https://github.com/tarantool/tarantool/issues/3745 .gitlab-ci.yml | 3 +++ .gitlab.mk | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 05d40b013..c144aae9c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,6 +38,7 @@ before_script: .deploy_only_template: &deploy_only_definition only: - master + - tags except: - schedules - external_pull_requests @@ -46,10 +47,12 @@ before_script: .pack_only_template: &pack_only_definition except: - master + - tags .perf_only_template: &perf_only_definition only: - master + - tags - /^.*-perf$/ except: - schedules diff --git a/.gitlab.mk b/.gitlab.mk index 0ce978063..1b3ffddcc 100644 --- a/.gitlab.mk +++ b/.gitlab.mk @@ -121,7 +121,7 @@ deploy: package echo ${GPG_SECRET_KEY} | base64 -d | gpg --batch --import || true ./tools/update_repo.sh -o=${OS} -d=${DIST} \ -b="${LIVE_REPO_S3_DIR}/${BUCKET}" build - if git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null ; then \ + if [ "${CI_COMMIT_TAG}" != "" ]; then \ ./tools/update_repo.sh -o=${OS} -d=${DIST} \ -b="${RELEASE_REPO_S3_DIR}/${BUCKET}" build ; \ fi -- 2.17.1