让Jenkins Job运行Puppet清单

时间:2013-07-02 11:44:43

标签: linux jenkins continuous-integration puppet

我正在尝试为我的项目设置CI。我想实现以下设置:

  1. 程序员将代码推送到GIT
  2. Jenkins提取最新代码
    • 使用Maven构建和运行单元测试
    • 使用Puppet在OpenStack上创建VM
    • 将Maven创建的EAR部署到VM
    • 运行更高级的测试
    • 将包含测试结果的报告通过电子邮件发送给我
    • 使用Puppet杀死VM
  3. 基本上我希望Jenkins能够协调整个过程。

    我目前的问题是,我似乎无法找到如何让Jenkins与Puppet交谈。

    Jenkins似乎没有“Puppet插件”(至少在官方网站上没有)。谷歌没有多大帮助...

    如何配置Jenkins作业以告诉Puppet运行特定的清单?

    由于

1 个答案:

答案 0 :(得分:1)

正如Vishal所提出的,我通过在一个作业中运行shell和远程shell执行,触发远程机器上的Puppet运行(以及之前移动清单和模块)来做类似的事情。在我的情况下,缺点是执行该作业的节点必须具有远程机器的密钥才能访问它。

但是,在您的情况下,您可能需要查看Vagrant-OpenStack-Plugin。这将完成你打算做的很多工作,你应该能够简单地在shell执行中运行vagrant,这将为你提供和配置你的OpenStack VM。

免责声明:尚未尝试过该特定插件,但我认为它与aws-plugin类似。