一尘不染

詹金斯-在一项工作中使用一项工作的结果

jenkins

我有一个运行makefile并生成一些文件的作业。然后,我想要另一个将这些文件发布到常春藤的工作。

我知道克隆工作区插件,但是还有其他选择吗?


阅读 257

收藏
2020-07-25

共1个答案

一尘不染

您运行了一个 Makefile ,并且要发布到 Ivy

Ivy是Ant的一部分,并且是一个利用全球Maven存储库结构来获取所需jar文件和其他依赖项的模块。

别误会,我使用了本地远程Maven存储库来发布wget其他项目将依赖的C / C ++库(您可以用来获取项目)。但是,我不是使用常春藤做的。

如果您考虑使用Apache Ivy,那么可以使用 Maven 进行发布。有一个Maven
Release插件会将您的工件复制到Maven存储库中,但是您可能要做的就是部署。

在我的Jenkins构建中,我只是让Jenkins deploy-file从命令行执行maven的步骤。这使我可以将文件部署到我的 Maven
Ivy存储库中,而无需首先创建pom.xml文件。(嗯,无论如何,您都想创建一个pom.xml,因为您想包含一个依赖关系层次结构。)

我通常在与创建jar / war / ear文件的工作相同的工作中执行此操作。但是,如果您想要一个单独的作业来执行此操作,则可以使用Copy
Artifact Plugin
。这个插件允许Job B从Job
A复制任何或所有已发布的工件。如果您只想要生成的 jar 文件,这比克隆整个工作区更快,更简单。

2020-07-25