我已使用多配置项目选项在Jenkins中配置了一个作业。 我能够成功构建用户定义的轴目标,但发现Jenkins首先在工作区文件夹(实际上没有使用)中开始签出,并在工作区/目标文件夹中检出该目标,在该文件夹中为该目标构建实际上已经执行了。
因此,当触发构建时,Jenkins首先将给定的URL检出到workspace /,然后检查到workspace / target / etc.
实际步骤:
1. checkout to workspace
2. checkout to workspace/target/<target1>
3. checkout to workspace/target/<target2>
预期步骤:
1. checkout to workspace/target/<target1>
2. checkout to workspace/target/<target2>
如何阻止詹金斯进行首次结账并只执行相关的检查?
甚至更好,我的构建允许在一次结账时完成所有操作。我能这样做吗?
答案 0 :(得分:6)
问题是Jenkins使用父作业为每个目标生成作业。不幸的是,它还会对作业工作区进行检查。
如果在不同的从属/计算机上运行这些目标特定作业,则可以将目标检出目录设置为与父工作空间目录相同。因此,有效地共享该节点上的工作空间而不是重复它。
在高级项目选项部分中,单击“高级”按钮以展开该部分。
选中使用自定义工作区并使用“。”用于子版本目录。如果未指定,则默认为/target/<target1>
现在而不是签到workspace/target/<target1>
只会在不同的目标上结帐workspace/
。
答案 1 :(得分:0)
Workaorund:使用可以轮询SVN,结帐并通过Parameterized Trigger Plugin开始主要工作的触发器作业。