不支持执行 PowerShell 命令的,需要安装插件才能完成这样的任务。本文将介绍 Jenkins PoserShell 插件的基本用法和常见问题。
插件
Plugin Manager 界面中选择 "Available" 标签页,输入 "powershell" 进行过滤:
添加 PowerShell 类型的 build step 了:
添加一个 "Windows PowerShell" 类型的 build step,并添加下面的 PowerShell 命令:
Write--Host ::--Host
文件中,然后在 agent 上调用 powershell.exe 执行这个脚本。第二个和第三个红框中则是输出的系统版本和 PowerShell 版本信息。
包括一些命令执行失败的情况)!
调用!这就导致 Jenkins 无法判断执行的命令是否成功退出,默认就认为都是成功的啦。所以要完善这里的逻辑就要求我们一定要在脚本中实现自己的 exit 逻辑:判断脚本执行成功时调用 exit 0;判断脚本执行失败时调用 exit 1(当然你可以根据自己的需要返回其他整数)。添加 exit 1,保存后执行:
支持了这个功能。创建一个 pipeline 类型的 job,输入下面的代码:
node {
powershell 'Write-Output "Hello,world!";'
}
功能还不完美:
输出的日志总带有一点乱码,具体原因不明。猜测是 pipeline 功能对 PowerShell 插件的支持还有小问题。
支持。期待 Jenkins 逐步的完善还存在的一些小问题,毕竟 MS 已经开始用 PowerShell 取代 bat 了。