gpt4 book ai didi

powershell 无法识别 gitlab CI 环境变量

转载 作者:行者123 更新时间:2023-12-02 23:54:17 35 4
gpt4 key购买 nike

所以我正在尝试从我的 .gitlab-ci.yaml 执行一个 powershell 脚本,我希望其中一个基于环境变量的脚本变量作为我的 powershell 脚本的起点。

我有一个 .gitlab-ci.yaml,其中包括以下内容:

job1:
stage: ps
script:
- powershell -File .\psfile.ps1 -var1 lalalal -var2 Solution -var3 '%CI_PROJECT_DIR%'

当使用写输出(或类似的)从 powershell 发布 CI_PROJECT_DIR ev 时,我得到一个空字符串。

当我执行 common echo '%CI_PROJECT_DIR%' 时,我得到了正确的路径

最佳答案

不知道 GitLab 的细节 .gitlab-ci.yaml文件,我的猜测是默认它是用于执行命令的主机平台的默认 shell

鉴于 Windows cmd.exe是默认 shell,您必须使用它的语法,这意味着:

  • 您需要使用%...%包含环境变量引用(您已经这样做了)

  • 为了引用一个值,您必须使用"..." (双引号);相比之下,'...' (单引号)在 cmd.exe没有语法功能并作为参数的一部分传递

因此,请尝试使用以下行:

    - powershell -File .\psfile.ps1 -var1 lalalal -var2 Solution -var3 "%CI_PROJECT_DIR%"

关于powershell 无法识别 gitlab CI 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49214055/

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