0
我在jenkins中创建了免费样式项目来安装msi安装程序。自由式项目有批处理命令作业在主站但不在从站Jenkins
- 以字符串作为参数的参数化作业。
- 限制,其中该项目可以运行已启用,选择标签
- 在构建步骤中选择“已执行Windows批处理命令”
批处理命令
@ECHO OFF
IF NOT EXIST "C:\Build\Sample_%buidVersion%.msi" (
echo "The specified build does not exist in path"
EXIT /B 1
) ELSE (
echo "Installation of build" %buidVersion% "is started"
START "" /WAIT msiexec.exe /i "C:\\Build\\Sample_%buidVersion%.msi" /L*V "C:\package.log" ADDSOURCE=ALL /qn
)
IF %errorlevel% NEQ 0 (
echo "Error in installation, Please check C:\package.log for more details"
) ELSE (
echo "The build" %buidVersion% "installation is successful"
)
EXIT
当我在不应用'限制可以运行此项目的地方已启用并选择标签'的情况下在主服务器中执行此操作通过在主服务器上运行而在en abling这个并在奴隶执行它说错误,因为,
“指定的版本不存在于路径。”
构建步骤“执行Windows批处理命令”标志着建设成为失败
你是否检查过你的slave,文件是否存在:“C:\ Build \ Sample_%buidVersion%.msi”? 也 - 命令的输出与命令本身之间有区别 - 确定你是从同一个地方拿走它的? 您也没有指定%buildVersion%从何处获取或如何在工作空间中创建msi文件 – Dvir669
是的,从属拥有该文件。错误的输出错误,现在纠正。 %buildVersion%是调用作业时提供的参数。 MSI文件现在手动复制到该位置.. – Deva
我可以问你添加echo“C:\ Build \ Sample_%buidVersion%.msi”,cd C:\ Build,dir,并将输出与文件比较,重新找? – Dvir669