2

将现有二进制文件添加到 Jenkins 管道构建的最佳方法是什么?

我有一个 Python 脚本,它包含一个现有的封闭源二进制 exe 文件。因为由于许可,无法在 GitHub 存储库中包含 exe,所以我想从本地服务器添加二进制文件作为构建过程中的一个步骤。闭源二进制可以打包供内部使用,但不能添加到 SCM。

詹金斯的管道有可能吗?

4

2 回答 2

3

首先,请不要在 SCM 中存储二进制文件,请搜索合适的位置/工具来执行此操作,例如 Nexus Sonatype 或 JFrog。

然后,如果您没有时间,至少作为最后一个选项存储为不同作业中的存档文件,然后使用 CopyArtifact 插件检索。

https://wiki.jenkins-ci.org/display/JENKINS/Copy+Artifact+Plugin

另一方面,如果您想在 Jenkins 中存储“工件”或自定义文件,您可以检查:

https://wiki.jenkins-ci.org/display/JENKINS/User+Content

然后你可以使用例如下载它:wget

于 2017-05-08T23:41:38.827 回答
0

在我看来,有三种选择:

  1. 在 Pipeline 插件中使用 stash/unstash 功能

这是关于 stash/unstash 的一个很好的教程:Tutorial

  1. 使用 CopyArtifact 插件:文件可以共享,从其他作业复制,但请记住它占用工作空间。

  2. 使用共享工作区插件。但这只会让事情变得复杂。

信息:

工件:档案是为长期文件存储而设计的(例如,来自您的构建的中间二进制文件)。Artifact 需要更多的存储空间和资源管理。

Stash:保存一组文件并稍后在同一构建中使用,通常在另一个节点/工作区上。stash 和 unstash 步骤设计用于小文件。Stash/unstash 可以在管道内使用,只需为存储分配一个名称并且仅在本地工作。

于 2017-05-09T12:14:42.137 回答