将teamcity artifact pathTeamcity插入powershell脚本

时间:2016-08-23 16:47:10

标签: powershell teamcity

我在teamcity中添加了一个项目,需要添加一个powershell脚本来更改一些配置设置并生成压缩工件。我已经在teamcity之外构建并测试了脚本文件,但是为了使它在构建期间工作,我需要获得构建工件的路径。

有没有办法在c:\artifacts\myproject\build\38下面的代码中使用teamcity参数替换,该参数总是会获取最新的构建目录?

#Find and replace various app.config settings
$location = C:\Artifacts\MyProject\Build\38\myApp\myConfig.config";
(Get-Content $location) | 
ForEach-Object { $_ -replace '<add key="platform" value="xxxx"/>', '<add key="platform" value="test"/>' } |
Set-Content $location   

#Should take source directory and create a zip file from it
$source = "C:\Artifacts\MyProject\Build\38\myApp\"
$destination = "C:\Artifacts\FrontOfficeApi\Build\38\artifact.zip"

GenerateZipFile -DestinationFilePath $destination -SourcePath $source

非常感谢

1 个答案:

答案 0 :(得分:0)

$buildDirectory = "%teamcity.build.chec‌​koutDir%"将为您提供已检出源代码的目录,以便您可以从那里相对工作。如果您将PowerShell作为源代码运行,则可以使用相同的变量将参数传递到PowerShell脚本。

希望这有帮助