我正在设置一个环境来进行一些测试。我们的构建实际上发生在我们的Team Foundation Server(TFS)上,它还通过SSH生成两个Linux构建。我们构建的结果是6种不同的配置,包括32位和64位的Windows和Linux(顶部有Python层的C ++代码)和两个Python版本。输出看起来像这样:
在测试从属设备上,我希望它看起来像这样:
Test文件夹包含一堆Python测试脚本。对于每个平台,我想复制Tests文件夹,只复制该平台的相应输出文件夹。输出非常大,所以我想避免复制超过必要的。我们希望在每次签到时运行这些测试。我不打算改变我们构建代码的方式,至少还没有,只是想添加一些额外的硬件测试。为了满足我们所有的测试需求,我需要在Windows和Linux上运行测试,包括32位和64位,以及我们的代码与之交互的其他硬件的组合。
基本要求是:
我尝试了几种方法,但似乎没有一种方法能够满足我的需求:
此时,我可能只是编写shell脚本代码来调用rsync来移动文件,类似于我从TFS构建中激活Linux构建的方式。看起来我不应该这样做。我想要的只是将两个目录(尽管不是相同的两个)从动态目录复制到每个从属目录。似乎不是那么不寻常的一点功能。我错过了什么吗?
答案 0 :(得分:0)
查看C opy Artifacts插件。即使它说“......来自另一个项目”,工件也可以来自同一个项目(如果存档步骤已完成)。
你需要2个Jenkins工作。一个是构建和归档工件,另一个是复制工件并运行测试。对于测试作业的每个配置/轴,您可以指定要复制的工件。