在作业构建开始时自动创建Jenkins节点

时间:2018-01-25 09:48:49

标签: jenkins amazon-ec2 automated-tests jenkins-plugins jenkins-slave

我需要我的回归测试在一个单独的ec2奴隶盒中运行,当我触发测试时它会自动启动。建立。

现在做了什么:

我安装了EC2 Jenkins插件,从所需实例创建了AMI,在Manage Jenkins中设置了云提供商 - >配置System,测试与Amazone控制台的连接并为该AMI设置标签。 所以詹金斯可以定义所需的AMI(1),并且AMI有一个标签" UI_TESTS" (2) enter image description here

我还在作业设置中设置限制,以便仅在具有" UI_TESTS"的节点上运行。标签:

enter image description here

现在我去管理Jenkins - >管理节点 我可以使用此云提供程序启动新节点:

enter image description here

Jenkins实际连接到那个ec2实例。

问题:

在这种情况下,节点将永久运行。 如果我删除创建的代理并尝试运行Job构建,我将收到一个错误,即没有这样的标签 - UI_TESTS:

enter image description here

问题:

在没有手动创建节点的情况下,在作业构建开始后立即触发从属ec2实例创建的适当方法是什么?

设置作业构建配置的下一步是什么,以便云提供程序在构建开始时立即启动从属实例?

1 个答案:

答案 0 :(得分:1)

所以,最终......我只需要等一下才能创建这篇文章。 实际发生的事情:当我开始构建时,它真的从云提供商那里调用ec​​2实例创建(不需要手动创建节点)。但是因为它花了大约2分钟来启动实例并将其带入工作表单,所以工作正在等待,我开始恐慌。

总结:上述算法可以正常启动远程ec2从节点。