我正在尝试跟随Koshuke的一个apporaches,通过在cludbees dev @ cloud上使用工作促销来组织我的构建。在他的演讲中,一切都充当了魅力(除了在他自己的Jenkins实例上运行他的例子,在localhost和我在dev @ cloud中运行jenkins工作)。
基本上我有几个工作,我在 joy 文件夹中名为 package 的主要工作定义了名为“promotion-to-e2e-testing”的促销流程(标准为完成下游工作之一,并且没有为促销定义额外的行动)。从jenkins仪表板我可以看到此促销活动成功。然而,一个工作(在文件夹 joy 中称为 e2e-testing )配置了触发器“当另一个项目被提升时构建:作业名称:”joy / package“,促销:”促销到e2e测试“没有被解雇!
我查看了jenkins系统日志(通过cloudbees Manage Jenkins链接),我可以看到:
May 20, 2013 6:04:33 AM hudson.remoting.SynchronousCommandTransport$ReaderThread run SEVERE: I/O error in channel s-8770fc61
java.io.IOException: Unexpected termination of the channel
athudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:50) Caused by: java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at hudson.remoting.Command.readFrom(Command.java:92)
at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:59)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)May 20, 2013 6:04:26 AM hudson.model.Run execute
INFO: joy » package » promotion » promotion-to-e2e-testing #5 main build action completed: SUCCESS
May 20, 2013 6:04:26 AM hudson.slaves.WorkspaceList log
FINE: Executor #0 for s-8770fc61 : executing joy » package » promotion » promotion-to- e2e-testing #5 acquired /scratch/jenkins/workspace/joy/package
May 20, 2013 6:04:25 AM hudson.slaves.ChannelPinger setUpPingForChannel
通过从底部到顶部阅读,似乎在成功升级后抛出SynchronousCommandTransport。为了确保抛出异常不是易变的,我已经运行了几次我的工作,但仍然在日志中看到相同的异常并且我的e2e测试工作没有被触发。
任何人都可以帮助我吗?云计算可能无法通过推广触发工作?或者也许是因为我的工作存储在jenkins文件夹中(所有工作都在一个文件夹中)?
答案 0 :(得分:1)
在提升其他项目时使用触发器构建:作业名称:
joy/package
我怀疑你遇到了JENKINS-17955的一个症状。如果我的假设是正确的,joy » package
将作为上游名称工作,即使joy/package
确实是插件应该期待的。但我还没有进一步挖掘并尝试重现并修复它。