一尘不染

Jenkins项目工件和工作区

jenkins

我已经使用詹金斯了很多年了,但是我从来没有自己设置它,就像我在新工作中所做的那样。我遇到了几个问题。

默认工作空间位置 -最新的Jenkins似乎在Jenkins \ jobs [projectName] \
workspace中具有默认工作空间,并且对于每个构建都将被覆盖(或擦除(如果选择))。我认为应该将其放置在Jenkins \ jobs
[projectName] \ builds [build_id] \中,以便能够为每个构建存储工作区状态以供将来参考?

在project > Build_ID页面上显示工作区
-与以前的工作区一致,我希望以前的版本的每个“工作区”都将显示在这里。目前,在我的设置中,该单独页面除了Git修订版和什么版本库更改触发了构建之外,什么都没有给您。以及控制台输出。文物在哪里?所使用的此版本的工作空间的链接在哪里?

在构建中归档工件
-选择工件时,过滤器似乎不起作用。我的构建在工作空间内的工件中创建了一个文件结构。我想存储它,工件过滤器说它开始于工作空间。所以我放入了“工件”,没有东西得到存储(这将存储在什么地方?)。我也尝试过’/
artifacts’和’artifacts / *’。

任何帮助将是巨大的!谢谢!


阅读 708

收藏
2020-07-25

共1个答案

一尘不染

您似乎对詹金斯的几个方面感到困惑。我认为您的问题基本上可以归结为以下几个方面。

工作区和构建之间有什么区别?

因此,以下是有关此主题的一些想法:

  1. 构建是历史数据。它们(通常)不会像构建/结帐期间的工作空间那样变化。
  2. 内部版本包含有关运行的信息(例如,其状态,内部版本号,更改日志等)以及您要求其存档的任何工件(日志,测试结果等)的信息。它们(通常)不包含工作空间之类的源代码。
  3. 内部版本存储在Jenkins\jobs\[projectName]\builds\[build_id]\目录中。这是Jenkins管理的目录,您(通常)不需要修改此目录中的任何内容。但是,工作空间是用于构建的目录,您几乎可以对它们执行任何操作并将它们放置在任何位置(它不必位于默认Jenkins\jobs\[projectName]\workspace目录中)。
  4. 工作区应该能够在任何给定时间被擦除。要还原它,只需使用相同的参数/修订版来重建作业。如果您需要在构建后保留某些内容,请在构建完成之前告诉Jenkins将其存档。
  5. 关于保存整个状态,我认为您不需要这样做。如#4所述,您应该能够通过启动与所讨论的构建相同的修订/参数来复制相同的构建。如果您无法从相同的修订版/参数恢复到原始状态,则可能需要努力进行调试,因为调试将是一场噩梦。:)
  6. 工作空间是项目的一个方面,而不是构建的一个方面,因此,该页面没有指向工作空间的链接。同样,构建只是保存来自先前运行的数据。项目使用工作区来构建内容,这就是为什么您可以从该页面进入工作区的原因。
  7. 关于如何保存工件,您必须指定要保存的文件的名称。除非您试图保存一个名为“工件”的文件,否则您可能应该使用其他东西。如何**/*.log对所有日志文件?或**/*.xml所有XML文件?

希望这可以帮助。

2020-07-25