【问题标题】:Archive only the latest .png files in a katalon jenkins job仅归档 katalon jenkins 作业中的最新 .png 文件
【发布时间】:2020-01-10 14:42:32
【问题描述】:

我需要将 Jenkins 中最新的 katalon 测试运行的任何 .png 屏幕截图存档,作为同一测试运行的构建后步骤。

使用 Jenkins 中的“归档工件”构建后操作,我目前将文件路径设置为 Reports/**/[test run name]/**/*.png,其中 Reports 位于工作区目录中。但是,这只会从存储在那里的当前和所有以前的测试运行中提取每个 .png 文件,其中在被清理之前会在工作区中存储一周。

我已尝试使用“排除”字段,但无法找到排除旧文件的方法,只能使用带有通配符的文件路径。

在 Jenkins 中是否有一种方法,使用存档工件或其他方式,仅存档由同一作业生成的 .png 文件,而不删除所有先前生成的 .png 文件?

【问题讨论】:

    标签: jenkins jenkins-pipeline katalon-studio


    【解决方案1】:

    根据我们的经验,最好将工件与作业一起存档,而不是依赖驻留在工作区中的文件以及单独的作业来清理它们。您可以通过以下方式告诉 Jenkins 丢弃旧的构建(和工件):

    pipeline {
      options {
            buildDiscarder(logRotator(daysToKeepStr: '7', artifactDaysToKeepStr: '7'))
      }
    }
    

    所有作业(及其工件)将在 7 天后清理。

    如果您使用该路径,则可以在将任何 png 文件归档为工件后安全地删除它们,并且您无需找出哪些是新的,哪些是旧的。

    或者,您可以命令png-produce 步骤来命名以作业编号开头的文件(可用作env.BUILD_NUMBER)并仅归档以该编号开头的文件。

    最后,您可以运行带有-name '*png'-mtime 谓词的find 命令以生成最近修改的png 文件列表,并将其用作归档步骤的输入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-02
      • 2020-02-09
      • 2019-04-20
      相关资源
      最近更新 更多