未访问模板中的新文件

New file in template is not accessed

我正在尝试在网页中显示结果。我想从 buildbot 的瀑布页面 link 这个。但是当我使用 <a href="link to the page">click</a> 时,所需的网页不会打开。我已将这个新网页放在模板目录中。还有什么需要做的吗?

由于您要显示的结果是由您的其中一个构建生成的, 瀑布网络模板不相关,因为它们是模板 整个瀑布,包括所有构建,无论它们是否 是产生这些特定结果的构建。

如果您希望为构建生成的某些文件提供 links,您 select 构建中的构建步骤,或为此目的创建一个构建步骤,它将提供 瀑布显示中其状态框内的 links(例如在 ShellCommand 构建步骤为其 stdio 日志提供 link 的方式)。 例如,您可能只是将最后一步添加到构建中,并说明 举报发布

您必须编写自定义 BuildStep class 来执行您 select 或创造。您自定义的 BuildStep class 必须派生自 LoggingBuildStep, 或者来自已经从 LoggingBuildStep.

派生的 class,例如 ShellCommand

必要的定制是覆盖 createSummary 方法 您自己的实现,并在该实现中调用 addURL 方法来添加 URL(s) 到您要发布到构建步骤的状态框的文件。您可以添加为 许多 URL 随你喜欢。这是一个大纲示例:

class ReportingStep(ShellCommand):
    ...
    command = ['upload','report',to','some','server']
    ...
    def createSummary(self,log):
        ...
        url = "url/to/the/report/on/the/server"
        self.addURL("Report", url)

现在,当 ReportingStep 完成时,其状态框将包含 一个 link 标记为 Report 的报告,该步骤已上传到服务器。

Google "buildbot buildstep createSummary" 更多线索。

What if my files are saved locally and for now I just want the user to have a link to download the zipped files? From what I understand, the above customization will help provide an external url.

用户单击由您的 buildmaster 提供的 link。如果你的 build 只是将这些文件保存在本地,然后将它们保存在 buildslave 上。 因此,除非您的 buildslave 与 buildmaster 在同一台机器上,否则 link 必须是 URL 到 "external" 文件。

另一方面,如果您的构建步骤将文件上传到构建管理员, 然后 link 可以 成为本地文件的 link - buildmaster 上的本地文件,它 正在服务 link.

如果你的 buildslave 和你的 buildmaster 在同一台机器上,那么显然 你不需要做任何上传:

addURL("Report",file:///path/to/the/zipfile.zip)

但是请记住,如果您希望这些 link 处的内容持久化,那么 /path/to/the/zipfile.zip 最好不要在被破坏的地方 通过每个构建。