当前位置: 首页 > 面试题库 >

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

何兴学
2023-03-14
问题内容

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

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


问题答案:

您运行了一个 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 文件,这比克隆整个工作区更快,更简单。



 类似资料:
  • 问题内容: 我有两个工作: 上载 发射实例 我想使 Launch-instance 依赖于另一个,以便触发 Launch-instance 自动导致上 载 首先运行。 我可以使用内置的Jenkins功能还是使用插件来实现? 请注意,我 不 希望 上传 总是触发 启动实例 ,这是“建等项目后建”的选项 启动实例 会做。我想要的东西更 类似于 Ant中的 attribute 如何工作 。 问题答案:

  • 问题内容: 我已经全局安装了gulp(npm install gulp -g)。但是我认为这是行不通的。当我在本地程序上进行gulp测试时,它工作正常。但是,当我在github(在Jenkins上)的同一个程序上进行gulp测试时,会出现以下错误。它不会识别gulp命令。有人能帮我吗?感谢詹金斯的错误: 但是在命令行中它运行良好。 问题答案: 为了知道您的gulp在哪里,您应该全局(对所有用户)将

  • 问题内容: 我有一个.Jar文件,它将在运行时将数据加载到数据库中。我已经计划通过詹金斯来担任这项工作。当我在詹金斯执行作业时,它将成功运行.JAR。但是,请说作业中是否存在空指针异常,并且该异常未成功完成。即便如此,詹金斯仍然说工作已经“通过”。如果作业执行过程中出现问题,如何使作业失败? 问题答案: @Corey的解决方案很好。而且,如果您不想编写JUnit测试并在Jenkins中提供支持,则

  • 问题内容: 是否可以指定,如果作业(A)被多次触发,则将先前的作业从队列中删除,并且如果有足够的可用插槽,则仅将最新的作业留在队列中或启动? 提前致谢! 问题答案: 您可以通过通过Groovy Script Plugin运行的系统Groovy Script来实现。这样的脚本可以通过其编程API直接访问Jenkins 。我没有其他办法。

  • 问题内容: 我安装了Jenkins,用于运行在Java,Maven,JMeter等上运行的自动化测试。Builds不会生成部署文件和文件夹,而只会生成测试报告。我是否可以一个接一个地(几乎同时)建立多个作业以并行运行?他们不必完全在同一时间。我只想确保开始第二个构建不会停止/损坏第一个(已运行)构建。谢谢 问题答案: 是的,有可能。 转到您的工作->配置并检查: 如有必要,执行并发构建 文件: 如

  • 问题内容: 我正在使用ansible在centos7上部署jenkins CI服务器的项目,并且在使用ansible从xml模板创建jenkins作业时遇到了问题。 到目前为止,一切工作正常,但现在我希望能够创建作业,并使用ansible从xml文件为它们提供一些基本配置。我的解决方案是jenkins-cli的以下命令: 在centos7框中手动输入时,此方法非常有效,但是当我将其放入ansibl