Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gitlab CI环境URL中的用户定义变量为空_Gitlab_Gitlab Ci_Gitlab Ci Runner - Fatal编程技术网

Gitlab CI环境URL中的用户定义变量为空

Gitlab CI环境URL中的用户定义变量为空,gitlab,gitlab-ci,gitlab-ci-runner,Gitlab,Gitlab Ci,Gitlab Ci Runner,我有以下(简化的)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\u NAME似乎

我有以下(简化的)
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\u NAME
似乎解析为空字符串,而runner变量
$CI\u BUILD\u REF\u NAME
解析正确


GitLab社区版8.13.0,GitLab runner 1.7.1。 我遗漏了什么?

从中可以看出,GitLab Runner 0.5.0或更高版本和GitLab CI 7.14或更高版本支持YAML定义的变量,因此首先,请检查您的GitLab组件版本

还可以尝试启用调试,以获得有关此变量未解析原因的更多线索:

job1:
  variables:
    CI_DEBUG_TRACE: "true"

这很可能是GitLab Runner中的一个bug,其中环境变量是在环境之后但在脚本之前定义的。你有没有考虑过开题

GitLab变量没有在.GitLab-ci.yml的环境部分进行专门翻译。关于这一点,还有一些问题有待解决(并且缺乏相关文档),例如

GitLab Community Edition 8.13.0、GitLab runner 1.7。1@user449326好啊你在运行什么操作系统?CI_DEBUG_TRACE是否产生任何相互测试详细信息?调试输出没有出现
环境
url
,除了
警告:所选执行器和shell不支持环境
,但快速研究表明,这似乎是一个常见的警告,可以忽略。出现环境变量的位置已正确解析,如
++export APP\u NAME=hello gitlab ci++APP\u NAME=hello gitlab ci