在我的TeamCity项目中,我有一个PowerShell构建步骤,我需要在脚本中获得团队城市的当前工作目录。我试着用这个代码从环境变量中获取它,然而,环境变量显然是null
:
"Working Dir: " + $env:teamcity_build_workingDir
如何访问TeamCity变量,或者如何获取TeamCity项目的当前工作路径?
根据TeamCity文档,teamcity.build.workingdirectory
-属性没有环境变量。
系统属性名称:teamcity.build.workingDir
环境变量名称:无
描述:开始构建的工作目录。这是TeamCity构建跑步者应该开始的一条道路过程这是一个特定于跑步者的属性,因此它有不同的每个新步骤的值。
您可以尝试返回PowerShell当前工作目录的$pwd
或Get-Location
。希望PowerShell进程是在与生成运行程序相同的工作目录中启动的。例如:
"Working Dir: " + $pwd
"Working Dir: " + (Get-Location)
$myDirectory = Split-Path $MyInvocation.MyCommand.Path
learn.microsoft.com
对于PowerShell构建步骤,您可以在运行代码之前将其设置为环境变量。例如,如果你通常想要运行CCD_ 5;源代码";然后使用类似的东西
$env:TEAMCITY_BUILD_WORKINGDIR = "%teamcity.build.workingDir%"
. "./my-script.ps1"
然后,您可以在脚本中使用$env:TEAMCITY_BUILD_WORKINGDIR
。