Skip to main content

Test Ansible roles with Vagrant, similar to Test Kitchen

Project description

Messier

https://img.shields.io/pypi/v/messier.svg https://img.shields.io/travis/conorsch/messier.svg Documentation Status

Test Ansible roles with Vagrant. Inspired by Test Kitchen.

Features

  • Supports multi-machine roles

  • Permits reboots during provisioning

  • Use any backend provider available in Vagrant (VirtualBox, AWS, DigitalOcean, etc.)

  • Runs Serverspec tests per role via ansible_spec

  • Integrates with preexisting Serverspec setups

Motivation

Test Kitchen is a wonderful solution for testing system configuration—if you use Chef. Its support for Ansible is, however, lacking. Similar Packer, Test Kitchen tries to run Ansible in “local” mode, which makes it impossible to test multi-machine roles for service orchestration. Well-meaning projects such as kitchen-ansiblepush (not to be mistaken with Ansible pull mode) enable more traditional Ansible usage patterns, but still suffer from limitations such as reboots always triggering failure.

In order to simplify setup, Test Kitchen makes the concession that testing VMs are polluted with additional software in order to accommodate test running. Serverspec has an SSH transport built into it, and Test Kitchen ignores that functionality completely.

Name

Messier was a comet hunter, and didn’t much care for galaxies or nebula. He only kept track of non-comet objects so he wouldn’t bother inspecting them further. Similarly, the messier tool, particularly the messier ci subcommand, considers working configurations forgettable, and flag only failures for follow-up work. The name is also brutally honest, in that the heavy Vagrant dependency will make your configuration projects messier. :wink:

TODO

  • Add init command for bootstrapping Messier config

License

GPLv3 (would like to use MIT, but if import ansible appears, then it must be GPLv3).

History

0.1.0 (2015-12-13)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

messier-0.1.1.tar.gz (17.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page