首页 文章

Openstack厨师Jenkins持续交付

提问于
浏览
1

我是Openstack和Chef工具的全新产品 . 我正在尝试 Build 一个持续交付流程,我想象如下:

从Jenkins创建一个我们有工作的管道:

  • Job1 :编译,运行单元测试静态分析并将RPM构建/工件部署到Artifactory中 .

  • Job2 :从Artifactory下载RPM文件并将它们一起保存到Yum存储库中 .

  • Job3 :在Openstack中清理并重新创建Lab基础设施(路由器,专用网络,具有干净图像的节点) . 之后,清理并重新注册Chef-Server中的那些节点,指定每个节点将具有的运行列表烹饪书 .

  • Job4 :使用在Job3中创建的基础结构运行功能和集成测试 . 发布结果 .

我怀疑的是如何实现Job3,我看到实现这个的方式是在Jenkins配置中使用Openstack命令行作为nova和neutron,而Chef也使用knife和chef-client命令,但是对于我将拥有的所有权限到OpenStack控制器服务器和所有厨师节点 . 有没有更简洁的方法来实现这个,而不仅仅使用命令行,像Jenkins插件,厨师食谱或其他方式?我不喜欢在Jenkins配置中添加的是不受版本控制,我想要像执行所有Openstack和Chef基础架构设置的主厨配方,并在版本控制下使用这些配方 . 但我不知道如何用食谱实现所有这些,以及如何从Jenkins应用它们 . 我的想法是正确的还是有其他方法来实现这种方法?

感谢您的帮助 .

2 回答

  • 0

    对于配置和编排应用程序基础结构,我建议使用Heat . 单个YAML文件描述了您所需的应用程序环境 .

    openstack文档描述了使用cloud-init如何使用nova服务器configured using chef at boot time .

    希望这可以帮助

  • 0

    还要考虑使用集成到Openstack中的CloudMunch来提供持续的交付和部署 .

    免责声明:我在CloudMunch工作 .

相关问题