我已经通过PowerShell
写了一个简单的脚本来收集一些文件并将它们压缩到一个文件夹中,让我们称之为Script.ps1
。我希望每次Jenkins执行新的构建时都运行该脚本,但是我也希望压缩文件的名称是BUILD_NUMBER
。
如何在PowerShell
中创建作为Jenkins当前内部版本号的变量?到目前为止,我正在调用配置的execute shell部分中的Script.ps1
。
发布于 2014-06-19 04:53:47
您可以向Script.ps1
中添加参数。只需在脚本的顶部使用Param
:
Param( $BuildNumber ) #must be first statement in script
# your current script goes here
然后,您可以调用脚本,将BUILD_NUMBER
作为参数从Jenkins传递。有关带参数调用Powershell脚本的信息,请参阅this question。
发布于 2014-06-19 02:16:21
我不熟悉Jenkins,但我相信BUILD_NUMBER
是一个环境变量。
要在PowerShell中访问它,请使用$env:BUILD_NUMBER
例如,如果使用7-zip
7z.exe a "$env:BUILD_NUMBER.zip" C:\Build\Path
发布于 2017-09-07 23:45:47
你也可以使用Powershell插件,参见here。
它允许您在Jenkins的文本框中直接输入PowerShell命令。
然后,您可以使用可用的环境变量(请参阅插件的文档)。用法有点晦涩难懂:
(Get-Content ./Sources/SlmMachineControl/GUI/Project1.rc).replace("`"FileVersion`", `"1.0.0.0`"" ,"`"FileVersion`" `"2.3.$($env:BUILD_NUMBER).0`"") | Set-Content ./Sources/SlmMachineControl/GUI/Project1.rc
还要注意双引号的转义。我花了很长时间:)
https://stackoverflow.com/questions/24291827
复制相似问题