TeamCity Kotlin DSL:如何从外部Powershell脚本访问代理配置参数

问题描述 投票:0回答:1

我在kotlin中定义了一个构建步骤,该步骤从这样的路径加载powershell脚本:

powerShell { 
    scriptMode = file { 
        path = "path\to\file.ps1"
    }
}

文件已成功加载并运行,但是问题在于脚本需要引用代理配置参数,例如MSBuildTools15.0_x64_Path。如果我使用内联脚本,则可以通过%MSBuildTools15.0_x64_Path%访问该参数。

是否有一种方法可以访问此变量而不必将其声明为环境?我知道这是否在环境中会在脚本中调用${env:MSBuildTools15.0_x64_Path},但如果有正确的方法,我宁愿不重新声明相同的内容。

powershell kotlin teamcity dsl
1个回答
0
投票

postanote所述,问题出在范围上。代理变量对脚本不可见,因为它在闭包范围内运行。这意味着您必须将变量显式发送给它。我的操作是在powershell脚本的开头定义一个param,就像您通常希望的那样:

© www.soinside.com 2019 - 2024. All rights reserved.