From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpng1.m.smailru.net (smtpng1.m.smailru.net [94.100.181.251]) (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 3A06F469719 for ; Fri, 11 Sep 2020 16:16:03 +0300 (MSK) References: <889eb7a5993813ac702095413881a8be5480e932.1599042246.git.avtikhon@tarantool.org> From: Sergey Bronnikov Message-ID: <9f031bd6-e81e-2b52-7fe3-b67e55f02473@tarantool.org> Date: Fri, 11 Sep 2020 16:16:01 +0300 MIME-Version: 1.0 In-Reply-To: <889eb7a5993813ac702095413881a8be5480e932.1599042246.git.avtikhon@tarantool.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Subject: Re: [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: "Alexander V. Tikhonov" , Kirill Yukhin , Alexander Turenko Cc: tarantool-patches@dev.tarantool.org LGTM Although there is a thing I'm worry about: CI_COMMIT_TAG is an environment variable specific for GitLab CI. Travis CI and GitHub Actions doesn't export such variable and condition will works always. 1. https://docs.travis-ci.com/user/environment-variables/ 2. https://docs.gitlab.com/ee/ci/variables/README.html#predefined-environment-variables 3. https://docs.github.com/en/actions/configuring-and-managing-workflows/using-environment-variables On 02.09.2020 13:25, Alexander V. Tikhonov wrote: > 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