Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/debugging/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/CD取消设置CI/CD设置中的变量集_Gitlab_Gitlab Ci Runner - Fatal编程技术网

GitLab CI/CD取消设置CI/CD设置中的变量集

GitLab CI/CD取消设置CI/CD设置中的变量集,gitlab,gitlab-ci-runner,Gitlab,Gitlab Ci Runner,我正在运行一个gitlab作业,并在作业中尝试取消设置CI/CD设置中设置的某些变量 例如,我有 某些_变量设置为 然后,在工作定义中,我尝试 变量: 一些变量:“ 脚本: -回显一些变量-[%SOME\u VARIABLE%] 但就工作本身而言,我仍然能 某些变量-[] 而不是 某些变量-[] 有人遇到过这个问题吗?项目CI/CD变量优先于YAML定义的变量。这是优先顺序 触发器变量或计划管道变量 项目级变量或受保护变量 组级变量或受保护变量 YAML定义的作业级别变量 YAML定义的全局变

我正在运行一个gitlab作业,并在作业中尝试取消设置CI/CD设置中设置的某些变量

例如,我有 某些_变量设置为 然后,在工作定义中,我尝试
变量:
一些变量:“
脚本:
-回显一些变量-[%SOME\u VARIABLE%]

但就工作本身而言,我仍然能

某些变量-[]

而不是

某些变量-[]


有人遇到过这个问题吗?

项目CI/CD变量优先于YAML定义的变量。这是优先顺序

  • 触发器变量或计划管道变量
  • 项目级变量或受保护变量
  • 组级变量或受保护变量
  • YAML定义的作业级别变量
  • YAML定义的全局变量
  • 部署变量
  • 预定义的环境变量

  • 我必须回答这个问题,因为它可能相当模糊

    所以当你在Windows上设置一个变量时,你必须说

    set v=some_值

    要解除它,它需要

    set v=

    不是

    set v=''

    当您将其设置为空字符串时,只需使用引号:

    $ set v=""
    $ echo %v%
    ""
    
    如果将其正确设置为空,则会得到:

    $ set v=
    $ echo %v%
    %v%
    
    但是在gitlab中,不能将值留空,例如

    variables:
       v:
    
    因为它的语法无效

    所以我要做的是在脚本区域中取消设置变量:

    script:
      - set v=
      - run_my_script_that_needs_v_unset
    
    然后脚本根据需要工作


    (我想在其他平台上也可以这样做。)

    您不需要
    =
    只需执行
    设置

    例如:

     before_script:
        - set S3_OBJECTS
        - source ./s3-objects.sh
    

    能否显示.gitlabci.yml文件?这可能是由于Gitlab CI将脚本之前的双引号解释为空,并且仍然重复使用旧的双引号。也许如果你放一个空格或者另一个中性值,这在技术上是正确的,但不能回答我的问题。