我为 Jenkins 设置了一个主从配置,其中主在本地站点上,从属在 AWS 上。我想设置 Jenkins 这样
- 建立和
- 测试
是单独的项目。为此,我需要在作业之间传递构建工件。工件的大小为数百 MB。不幸的是,尽管所有项目都构建在同一个节点上,但工件总是通过 master 传递,从而导致严重的速度损失。
有没有办法将工件保留在构建从站的本地并在项目之间传递它们?
我为 Jenkins 设置了一个主从配置,其中主在本地站点上,从属在 AWS 上。我想设置 Jenkins 这样
是单独的项目。为此,我需要在作业之间传递构建工件。工件的大小为数百 MB。不幸的是,尽管所有项目都构建在同一个节点上,但工件总是通过 master 传递,从而导致严重的速度损失。
有没有办法将工件保留在构建从站的本地并在项目之间传递它们?
在您的 AWS 从站上,您可以创建一个共享文件夹 (/jenkins_share)。
在构建作业结束时,添加构建后步骤操作以将您的工件复制到此文件夹中。
在您的测试作业中,添加一个预构建步骤操作以从 /jenkins_share 文件夹中获取相关工件。
这不是最好的解决方案,但它应该工作:)
您可以使用Node Stalker 插件在构建节点上的两个作业之间共享工作空间。
例如,第一项工作可以进行 SCM 签出和构建。第二个作业可以在同一个工作区目录中运行测试,而无需进行另一个 SCM 检出。这也确保了两个作业都在构建和测试相同的 SCM 版本,否则需要额外的设置。