如果在Jenkins中进行构建后构建通过或失败,我将尝试执行Shell脚本。除了运行目标外,我在后期构建中看不到此选项来执行一些Shell脚本。
Answers:
使用Post build task插件非常容易完成。
您还可以使用Groovy Post Build运行任意命令-这将使您对它们何时运行等有很多控制。在构建失败或不稳定的情况下,我们使用它来运行“非指责” shell脚本。
if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) {
item = hudson.model.Hudson.instance.getItem("PROJECTNAMEHERE")
lastStableBuild = item.getLastStableBuild()
lastStableDate = lastStableBuild.getTime()
formattedLastStableDate = lastStableDate.format("MM/dd/yyyy h:mm:ss a")
now = new Date()
formattedNow = now.format("MM/dd/yyyy h:mm:ss a")
command = ['/appframe/jenkins/appframework/fob.ksh', "${formattedLastStableDate}", "${formattedNow}"]
manager.listener.logger.println "FOB Command: ${command}"
manager.listener.logger.println command.execute().text
}
(我们的命令将最后一个稳定的构建日期和当前时间作为参数,以便可以调查可能破坏了构建的人,但是您可以以类似的方式运行所需的任何命令)
如果我没看错您的问题,那么您想在构建的构建后操作部分中运行脚本。
我自己用的PostBuildScript插件运行git clean -fxd
构建具有存档文物和公布的测试结果之后。我的Jenkins从属服务器具有SSD磁盘,因此我没有将生成的文件保留在工作空间中的空间。
您必须将构建后的Shell脚本设置为单独的Jenkins作业,并在构建后的步骤中触发它。看起来您将需要使用参数化触发器插件,因为只有在触发构建成功的情况下,标准的“构建其他项目”选项才有效。