2016-03-15 28 views
0

我们的集成测试在jenkins(带docker插件)和硒上运行。当测试失败时,我们希望容器仍在运行,以便我们检查情况。为了防止容器停止,当出现问题时,我们会在作业结束时有一个脚本运行无限循环。我如何发送信号给正在运行的jenkins作业

当测试通过时,循环不运行,工作正常。当测试失败时,容器仍在运行,这很好,但工作将永远持续下去。我们必须中止工作,但测试不会被标记为失败。

所以我想知道是否可以发送信号到失败的测试来打破循环并正常结束测试?对不起,我很抱歉。感谢您阅读我的问题。

回答

1

您可以使用docker kill发送信号到正在运行的容器。

# docker kill --help 

Usage: docker kill [OPTIONS] CONTAINER [CONTAINER...] 

Kill a running container 

    --help=false   Print usage 
    -s, --signal=KILL Signal to send to the container 

例如,有一个名为jenkins的正在运行的容器。

的命令是docker kill --signal=SIGTERM jenkins

注意:只有一个方法,该方法在容器中PID = 1可以接收该信号。

相关问题