Конвейер релиза на основе тегов Gitlab CI только на главном - PullRequest
1 голос
/ 22 сентября 2019

Я ищу способ обеспечить выполнение некоторых заданий (выпуска) в Gitlab CI только в том случае, если ветвь является главной, а используемый тег соответствует определенному шаблону.Для этого я использовал следующие утверждения, но по какой-то причине Gitlab не распознает ветви и теги одновременно, и кажется, что это утверждение никогда не выполняется.

building:
   stage: build
   only:
      refs:
         - master
      variables:
         - $CI_COMMIT_REF_NAME =~  /^v[0-9]+\.[0-9]+(\.[0-9]*)?/
   script:
      - echo "Start building"

Я пробовал то же самоескрипт также с CI_COMMIT_TAG, но он не работал.

Я не могу использовать -tags для секции only, так как она будет вызываться любыми тегами, независимо от формата тега.

PS: я использую следующие команды, чтобы добавить тег выпуска к master.

git tag -a v2.1.3 -m "Releasing version v2.1.3"
git push --tags
...