2011-04-27 54 views
0

我有这样一种情况:一个项目是通过轮询SCM运行的哈德森工作,另一个是项目发布的哈德森工作。在发布第二份工作时,我们不希望多次运行IT测试,因此我们在发布之前要运行一个带有作业的工作,如果不会失败,我们将运行发布工作。 可以设置发布hudson作业来运行其他作业,并且只有在成功完成后才能开始运行自己? ThxHudson依赖的工作

更新: 我有工作A和工作B.工作A可以随时由大家运行,它不应该触发任何其他工作2。但是,如果我想运行作业B,我需要在点击运行B后它应该触发作业A,并且只有在作业A成功完成的情况下,作业B才会启动它自己的执行。

回答

0

据我所知,用默认安装这是不可能的。但是你可以使用Join触发器插件。然后您必须创建一个新工作,例如“创建发布”。此作业会触发作业A进行测试(使用“构建其他项目”,然后在新作业的“构建后行动”中定义“加入触发器”以运行作业B.

+0

是的,这将帮助我thx) – user253202 2011-04-27 12:47:16

0

如果我正确理解你的问题,你有一个运行你的自动化测试的构建,以及另一个创建你的发布的构建。您希望让它们相互依赖,这样如果自动化测试失败,则不会重新构建发布版本。

我会以不同的方式处理。哈德森有一个功能,您可以归档“最后成功的文物”。如果您正确执行此操作,则可以对在测试运行期间创建的二进制文件进行存档并使用这些工件来推出您的版本。通过这种方式,即使是一个破损的测试版本也不会影响您的“最后成功的工件”,而且您的版本将继续使用一套较旧的,成功的二进制文件。

+0

嗨,我更新了描述) – user253202 2011-04-27 09:51:02