gpt4 book ai didi

variables - Gitlab Ci 文件变量内容而不是路径

转载 作者:行者123 更新时间:2023-12-04 10:52:42 26 4
gpt4 key购买 nike

我正在尝试建立一个管道来构建和测试我们的项目。
A 已设置在组级别上归档变量以在管道内使用
Variables for mvn settings and certificate

问题是, mvn_settings 文件被解析为文本而不是路径。
所以我的构建失败了。

$ mvn $MAVEN_CLI_OPTS compile
Unable to parse command line options: Unrecognized option: --><!--

如果我“回声” $mvn_settings我得到了路径。
此外,当我对管道工作的路径进行硬编码时
我的管道:
variables:
...
MAVEN_CLI_OPTS: "--batch-mode -s '$mvn_settings'"

...
before_script:
- keytool -importcert -file "$db_trust" -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -trustcacerts -noprompt

generate:
stage: generate
script:
- mvn $MAVEN_CLI_OPTS compile
artifacts:
paths:
- target/
expire_in: 3 days

...

有什么方法可以确定管道何时使用内容以及何时使用路径?

最佳答案

当您在 .gitlab-ci.yml 文件的 variables 部分中使用文件变量时,该变量将被扩展以包含内容而不是文件名。这是 GitLab 中的一个错误,他们可能会在即将发布的版本中修复。这是 GitLab 上的问题:

https://gitlab.com/gitlab-org/gitlab/issues/29407

他们用 P2 标记了它,这意味着他们将在标记后的 60 天内尝试修复它。不过,他们似乎已经错过了本月的最后期限。

同时,您可能只需要在需要的地方手动使用变量。如果你有一个巨大的 .gitlab-ci.yml 文件,你也许可以使用 yaml anchorsextends keyword重用部分脚本而不必依赖于变量扩展。

关于variables - Gitlab Ci 文件变量内容而不是路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59393708/

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