Gitlab-CI 提交评论的环境变量

Gitlab-CI Environment Variable for Commit Comment

我目前正在使用 GitLab-CI 将我项目的暂存分支 CD 到 Google Firebase。 每个部署都会获得带有 PipelineID 和构建 ID 的特殊注释。

firebase deploy -m "Pipeline $CI_PIPELINE_ID, build $CI_BUILD_ID" --non-interactive --token $FIREBASE_DEPLOY_KEY

为了便于使用,在 Firebase 控制台中回滚提交时,我想将提交消息包含到部署注释中。

我搜索了整个文档,但没有找到对应的变量。是我弄错了,还是真的不可能?

感谢您的帮助!

Gitlab 10.8 及更新版本:

$CI_COMMIT_MESSAGE 环境变量包含提交消息。感谢 Ladislav 的更新!

原答案(gitlab 10.8之前):

通过预定义的 Gitlab CI 变量绝对不可能如此 list 所示。但你也许可以用其他方式做到这一点。

例如,您可以使用以下方法检索提交消息(找到 here

git rev-list --format=%B --max-count=1 HEAD

git rev-list --format=%B --max-count=1 $CI_COMMIT_SHA

然后在您自己的命令中使用该命令的输出。

例如:

MESSAGE=$(git rev-list --format=%B --max-count=1 HEAD)
firebase deploy -m "Pipeline $CI_PIPELINE_ID, build $CI_BUILD_ID, message $MESSAGE" --non-interactive --token $FIREBASE_DEPLOY_KEY