将现有二进制文件添加到Jenkins管道构建的最佳方法是什么?
我有一个Python脚本,它包装了一个现有的闭源二进制exe文件。因为由于许可而无法将exe包含在GitHub存储库中,所以我想从本地服务器添加二进制文件作为构建过程中的一个步骤。封闭源二进制文件可以打包供内部使用,但不能添加到SCM中。
Jenkins的管道可以实现吗?
答案 0 :(得分:2)
首先,请不要在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
下载它答案 1 :(得分:0)
我认为有三种选择:
这是关于stash / unstash的一个很好的教程:Tutorial
使用CopyArtifact插件:文件可以共享,从其他作业复制但记住它占用工作区。
使用共享工作区插件。但这只会让事情变得复杂。
的信息:
工件:存档是为长期文件存储而设计的(例如,构建中的中间二进制文件)。工件需要更多的存储空间和资源管理。
Stash:保存一组文件,稍后在同一版本中使用,通常在另一个节点/工作区上使用。 stash和unstash步骤设计用于小文件。 Stash / unstash可以在管道内部使用,只需为存储库分配一个名称即可。仅在本地工作。