У меня есть сборка GitLab CI script следующим образом:
create release:
stage: deploy
tags:
- basic
only:
- tags
script:
- GITLOG=$(echo "# Changes Log"; git log `git tag | tail -2 | head -1`..${CI_BUILD_TAG} --pretty=format:" - %s")
- curl -X POST -d "private_token=$CI_BUILD_TOKEN&description=$GITLOG" "http://git.example.com/api/v3/projects/${CI_PROJECT_ID}/repository/tags/${CI_BUILD_TAG}/release"
Цель этого шага - автоматически добавлять журнал изменений из Git в раздел "Релизы GitLab".
Это работает, если я вручную запустил это в командной строке и поместил в переменные...
Проблема в том, что значение CI_BUILD_TOKEN
в бегущей строчке не является допустимым личным токеном GitLab - это только токен для подключения к реестру докеров - согласно документации.
Есть ли способ получить действительный маркер API GitLab, который может использовать бегун сборки для доступа к API для проекта, на котором выполняется сборка? Похоже, это должно быть возможно.
Бегун GitLab:
gitlab-runner -v
Version: 1.2.0
Git revision: 3a4fcd4
Git branch: HEAD
GO version: go1.6.2
Built: Sun, 22 May 2016 20:05:30 +0000
OS/Arch: linux/amd64