我想使用Jenkins CI与Play框架进行集成测试。我的方案如下:
我使用SBT插件执行SBT,项目A和项目B分别正常工作。
我无法找到合适的方法。我面临的问题是我需要将项目B作为预构建步骤运行,但项目B必须保持运行状态,但是一旦构建步骤执行sbt的run
动作,项目B就会结束完成我不想要的构建。
我执行以运行项目B的命令是clean compile run
,它作为对SBT启动器的操作执行。
我尝试了SBT stage
,然后运行了jar,但这也导致jar停止了对构建的控制的问题,而Project A没有机会启动。
我还检查了Spawning a process in Jenkins,但我也无法使其工作。我正在使用Ubuntu,我尝试使用nohup
而不是daemonize
,如链接中所述,将其添加为执行shell脚本构建步骤,并启动Project B服务器进程和一段时间后杀死它。我也不认为这可能是我想做的唯一方法。
可能是我错误地使用了Jenkins,或者我可能需要向另一个方向看,所以对此有任何帮助都非常感谢。
答案 0 :(得分:0)
我遇到了类似的问题,我需要释放控制台来运行其他东西。我做了类似的事情(即使用sbt命令创建脚本),然后运行带有nohup的脚本,如下所示:
nohup ./myScript.sh &
和Play!应用程序在后台运行良好。
请记住在您的情况下使用不同的端口,因为您正在运行两个Play!应用