一尘不染

配置Hudson部署构建

tomcat

我正在尝试配置Hudson,以便能够将构建(.war文件)自动部署到Tomcat。然后,某人将使用新部署的内部版本来测试应用程序。

我尝试使用“部署插件”来自动部署.war文件,并且此方法有效。但是,构建.war文件的作业将在每次scm更改后运行(无论何时提交代码)。使用Deploy插件,每次构建时都会将.war文件部署到Tomcat。因为代码是频繁提交的,所以这意味着Web应用程序也将频繁重新启动,这将中断测试过程。

我很欣赏Hudson运行我的单元测试并定期进行构建的事实,因此我不想更改此工作的触发器。

我正在寻找一种可以手动决定从Hudson内部进行部署的方法。我尝试创建一个单独的作业,该作业将与第一个作业一起部署.war,但这没有用。有没有人有过设置这样的经历的经验?


阅读 207

收藏
2020-06-16

共1个答案

一尘不染

如何获得文物

查看“ 部署插件”页面上的“
如何回滚或重新部署以前的版本 ”部分。它描述了基本思想。它使用复制工件插件将工件从构建作业复制到当前作业(部署作业)。从那里开始,您将执行与构建步骤相同的操作。

如何触发部署

开始部署后无法触发构建作业,因此首先运行构建,然后运行部署作业。因此,有一些选择:

  • 手动触发 构建。启动部署的用户需要选择特定的构建作业运行。
  • 计划的部署 这可能是每晚任务的一部分。该作业会按一定的间隔触发(例如每天晚上或每个周末)。由于它是自动化的,因此部署作业应该选择上一次成功的构建(然后您不需要参数化的作业)。您没有机会传递跑步号码。
  • 每当构建成功完成时, 都会 触发 部署作业(不符合您的要求,但列出来完成列表)
  • 其他 一些 (深奥的)触发 。这可以有很多不同的想法,例如通过调用构建URL远程触发。该呼叫可以来自您的票务系统,测试实验室管理系统之一,也可以来自您喜欢的任何其他系统。您还可以通过源代码管理系统中的特定更改来触发部署,例如更改发行版号(例如,在提交消息中用关键字标记)。该触发器可以在Hudson内部或外部实现。也有其他触发器可用。这包括但不限于html页面更改,文件系统受监视部分的更改,IM消息,电子邮件。前三个由Hudson插件实现。查看插件列表,以了解所有可用的方法,或者在这两种情况下,您都需要确保构建作业将部署所需的所有工件存档。
2020-06-16