我正在尝试自动化测试环境创建过程。我使用Jenkins作为CI服务器,希望能够生成新的VM示例(基于预定义的模板)。我知道如果你想使用VM作为jenkins构建从机,有一个插件。但是我想使用VM作为即将使用的测试环境,在那里部署构建工件。所以问题是什么是最好的方法?我目前正在考虑使用Chef来配置新的VM示例,但是如何生成VM本身是一个谜。感谢任何帮助。
mnemlml81#
听起来您需要类似Test-Kitchen的东西。您可以使用Chef和kitchen-ec2启动计算机,运行配方代码,然后在其上运行一些测试(通常是serverpec或bats,但有许多测试驱动程序)。您可以从Jenkins主机本身运行test-kitchen,因此Jenkins不需要担心创建新示例。
izkcnapc2#
Ansible对Amazon EC2示例创建等有很好的支持。更多细节请参考this link。一旦创建了EC2示例,您还可以使用Ansible完全自动化应用程序部署。
vzgqcmou3#
看看Ansible如何自动化你的部署。我们所做的是让Ansible提供新的虚拟机,然后使用chef/puppet来配置管理实际的环境代码库。它工作得非常好!下面是行动手册体系结构示例:
--- - hosts: localhost connection: local gather_facts: True roles: - load_balancer - cloud_servers - hosts: infra gather_facts: True roles: - deploy - hosts: localhost connection: local gather_facts: True roles: - test - clean_up
bogh5gae4#
您可以通过Jenkins. https://wiki.jenkins-ci.org/display/JENKINS/Vagrant-plugin上的Vagrant插件使用Vagrant生成虚拟机Vagrant是一种虚拟化 Package 器(用于wmare、virtualbox、lxc),它允许您设置VM的配置并在几个选项之间进行选择:
https://docs.vagrantup.com/v2/
4条答案
按热度按时间mnemlml81#
听起来您需要类似Test-Kitchen的东西。您可以使用Chef和kitchen-ec2启动计算机,运行配方代码,然后在其上运行一些测试(通常是serverpec或bats,但有许多测试驱动程序)。您可以从Jenkins主机本身运行test-kitchen,因此Jenkins不需要担心创建新示例。
izkcnapc2#
Ansible对Amazon EC2示例创建等有很好的支持。更多细节请参考this link。一旦创建了EC2示例,您还可以使用Ansible完全自动化应用程序部署。
vzgqcmou3#
看看Ansible如何自动化你的部署。我们所做的是让Ansible提供新的虚拟机,然后使用chef/puppet来配置管理实际的环境代码库。它工作得非常好!
下面是行动手册体系结构示例:
bogh5gae4#
您可以通过Jenkins. https://wiki.jenkins-ci.org/display/JENKINS/Vagrant-plugin上的Vagrant插件使用Vagrant生成虚拟机
Vagrant是一种虚拟化 Package 器(用于wmare、virtualbox、lxc),它允许您设置VM的配置并在几个选项之间进行选择:
https://docs.vagrantup.com/v2/