Gyu*_*uri 5 gitlab gitlab-ci-runner
我正在运行 gitlab 作业,在该作业中我试图取消 CI / CD 设置中设置的某些变量。
例如,我已
SOME_VARIABLE设置为<some_value>
然后,在工作定义中,我尝试
variables:
SOME_VARIABLE: ""
script:
- echo SOME_VARIABLE - [%SOME_VARIABLE%]
Run Code Online (Sandbox Code Playgroud)
但在工作本身中我仍然得到
SOME_VARIABLE - [<some_value>]
代替
SOME_VARIABLE - []
有人遇到过这个吗?
我必须回答这个问题,因为它可能相当晦涩。
所以当你在 Windows 上设置变量时,你必须说
set v=some_value
要取消设置,需要
set v=
不是
set v=''
当您将其设置为空字符串时,它将是这样的,只需引号:
$ set v=""
$ echo %v%
""
Run Code Online (Sandbox Code Playgroud)
如果您正确地将其取消设置为空,您将得到:
$ set v=
$ echo %v%
%v%
Run Code Online (Sandbox Code Playgroud)
然而在gitlab中,你不能将值留空,例如
variables:
v:
Run Code Online (Sandbox Code Playgroud)
因为它的语法无效。
所以我必须做的是取消设置脚本区域中的变量:
script:
- set v=
- run_my_script_that_needs_v_unset
Run Code Online (Sandbox Code Playgroud)
然后脚本按需要运行。
(我想在其他平台上也可以类似地完成。)
Kin*_*ang -1
项目 CI/CD 变量优先于 YAML 定义的变量。这是优先顺序。
| 归档时间: |
|
| 查看次数: |
9679 次 |
| 最近记录: |