13

我有一个简单的计划和一份简单的工作。

任务:

  1. 源代码签出
  2. 微软构建
  3. 运行测试
  4. 生成测试报告

通过四个步骤,我的实用程序生成带有屏幕截图的测试报告。该报告包含图像的绝对链接。(例如:)onclick="window.open('./Screenshots/66ef3a03-8b82-4b40-b49d-b0155e273738.png');return false;"

如果我在本地机器上打开报告,报告工作正常,但在 Bamboo 上我收到错误“找不到页面”,因为 Bamboo 没有收集“屏幕截图”文件夹。

如何设置工件定义以收集包含文件的文件夹?

PS我尝试设置\*.*复制模式,但Bamboo只收集文件(没有文件夹和子文件夹)

4

3 回答 3

12

您只需提供文件夹位置,例如“build/”,然后,在复制模式中,您可以放置​​ **/*.*这应该复制您想要的所有文件。

请注意:

  • 该位置相对于构建目录。不要使用绝对路径来引用该位置。
  • 位置不支持星号。对于此字段,提供文件所在的文件夹名称。

此外,您可以根据需要定义任意数量的工件定义。

于 2013-08-07T20:33:39.740 回答
3

最好的方法是将所有工件压缩在一起。我创建了一个 bash 脚本来执行此操作

cd "toArtifactFolder"
zip -r Artifact .

然后在竹项目设置中,您必须编辑工件并将位置更改为工件 zip 文件所在的位置然后在复制模式中输入 zip 文件,例如Artifact.zip

于 2013-03-06T06:57:49.253 回答
3

Bamboo 使用“Ant 文件复制模式”

  • 递归匹配所有文件:**/*
    • 这确实包括几乎所有内容
    • 不幸的是,这不包括dot -files,至少在我对 linux 构建代理的测试中。**/.*除了第二个工件(模式)或创建档案之外,我找不到解决方法。
  • 匹配任何子文件夹中的所有文件:*/*
    • 这不包括foo/bar/test.xyz
    • foo/test.xyz这确实包括bar/test.xyz

您可以进行更高级的匹配;例如,您可以使用build/**/*.jar从构建目录中复制所有 jar。有关更多信息,请参阅文档

于 2017-07-21T12:21:19.380 回答