Skip to content

CI_COMMIT_BRANCH variable is not working if job start from rule of commit-taging

Summary

It is not possible to use any variable to get the branch name, when using a rule for tags

Steps to reproduce

.gitlab-ci.yml
only on tags:
  stage: build
  rules:
    - if: '$CI_COMMIT_TAG =~ /^v-\d+.\d+.\d+/'
  script:
    - echo $CI_COMMIT_BRANCH
    - echo $CI_COMMIT_REF_NAME

Actual behavior

$CI_COMMIT_BRANCH = ""
$CI_COMMIT_REF_NAME -> gets tag name.

Expected behavior

$CI_COMMIT_BRANCH = "master"

Relevant logs and/or screenshots

job log

image

Environment description

running on shell Centos 7 host of runner

Used GitLab Runner version

gitlab-runner --version
Version:      13.0.1
Git revision: 21cb397c
Git branch:   13-0-stable
GO version:   go1.13.8
Built:        2020-06-01T08:24:47+0000
OS/Arch:      linux/amd64

Possible fixes