gpt4 book ai didi

Gitlab 只有 : variables multiple

转载 作者:行者123 更新时间:2023-12-04 17:25:53 24 4
gpt4 key购买 nike

反正有做多个AND变量表达式吗?
让我们说

    .template1:
only:
variables:
- $flag1 == "true"

.template2:
only:
variables:
- $flag2 == "true"

job1:
extends:
- .template1
- .template2
script: echo "something"
这将如何评估?
  • 这是否会导致 only:variables 相互覆盖,因此 template2 是最终结果?
  • 或者这是否会导致组合变量使其成为 OR 语句

  •     only:
    variables:
    - $flag1 == "true"
    - $flag2 == "true"
    有没有办法把它改为和 AND 语句? keeping the templating system ,并且不使用 rules: if因为使用规则如果有自己的怪癖,在合并请求期间触发多个管道

    最佳答案

    问题
    任何时候两个工作被“合并”,要么使用 extendsanchors ,GitLab 将用另一部分覆盖一个部分。这些部分实际上并没有合并。在您的情况下,您从两个作业扩展,因此 GitLab 将完全覆盖第一个 variables第二节。
    解决方案
    实现所需结果的一种方法是在模板作业中定义变量。那么您将遇到的问题是两个 variables部分将相互覆盖。所以..
    您可以使用 before_script部分来定义第二个模板中的变量。这种方法适用于您的 2 个模板的特定情况。您可以使用 scriptafter_script如果您需要第三个模板,请购买如果您需要更多模板,则必须使用更高级的方法。

        .template1:
    # We can define a variables section here, no problem
    variables:
    flag1: "true"

    .template2:
    # You can't define a second variables section here, since it will overwrite the first
    # Instead, define the environment variable directly in a before-script section
    before_script:
    - export flag2="true"

    job1:
    extends:
    - .template1
    - .template2
    only:
    variables:
    - $flag1 == "true"
    - $flag2 == "true"
    script: echo "something"

    关于Gitlab 只有 : variables multiple,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63388651/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com