我有以下(简化)gitlab-ci.yml
:
variables:
APP_NAME: "hello-gitlab-ci"
deploy:
stage: deploy
script: some-script
environment:
name: staging
url: http://hostname/$APP_NAME/$CI_BUILD_REF_NAME
Gitlab UI中生成的url例如:http://hostname//master
。 $APP_NAME
似乎解析为空字符串,而转轮变量$CI_BUILD_REF_NAME
正确解析。
GitLab Community Edition 8.13.0,gitlab-runner 1.7.1。 我错过了什么?
答案 0 :(得分:1)
From GitLab doc, the YAML-defined variables are supported with GitLab Runner 0.5.0 or higher and GitLab CI 7.14 or higher, so first, check your GitLab component versions.
Try also enabling debug, to have more clues on why this variable is not resolved:
job1:
variables:
CI_DEBUG_TRACE: "true"
答案 1 :(得分:1)
这很可能是GitLab Runner中的一个错误,其中env变量是在环境之后但在脚本之前定义的。你考虑过开设一个问题吗? https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues
答案 2 :(得分:1)
GitLab变量未在.gitlab-ci.yml的环境部分中专门翻译。关于这一点存在一些问题(以及缺乏关于此的文档),例如https://gitlab.com/gitlab-org/gitlab-ce/issues/27921