Skip to main content

Molecule aids in the development and testing of Ansible roles.

Project description

********
Molecule
********

.. image:: https://badge.fury.io/py/molecule.svg
:target: https://badge.fury.io/py/molecule
:alt: PyPI Package

.. image:: https://readthedocs.org/projects/molecule/badge/?version=latest
:target: https://molecule.readthedocs.io/en/latest/
:alt: Documentation Status

.. image:: https://img.shields.io/badge/license-MIT-brightgreen.svg
:target: LICENSE
:alt: Repository License

Molecule is designed to aid in the development and testing of `Ansible`_ roles.
Molecule provides support for testing with multiple instances, operating
systems and distributions, virtualization providers, test frameworks and
testing scenarios. Molecule is opinionated in order to encourage an approach
that results in consistently developed roles that are well-written, easily
understood and maintained.

Molecule uses `Ansible`_ `playbooks`_ to exercise the `role`_ and its
associated tests. Molecule supports any provider [#]_ that `Ansible`_
supports.

.. [#]

Providers can be bare-metal, virtual, cloud or containers. If Ansible can
use it, Molecule can test it. Molecule simply leverages Ansible's module
system to manage instances.

.. _`playbooks`: https://docs.ansible.com/ansible/playbooks.html
.. _`role`: http://docs.ansible.com/ansible/playbooks_roles.html

Quick Start
===========

Installing
----------

.. image:: https://asciinema.org/a/161970.png
:target: https://asciinema.org/a/161970?speed=5&autoplay=1&loop=1
:alt: Installing

Creating a new role
-------------------

.. image:: https://asciinema.org/a/161976.png
:target: https://asciinema.org/a/161976?speed=5&autoplay=1&loop=1
:alt: Creating a new role

Testing a new role
-------------------

.. image:: https://asciinema.org/a/161977.png
:target: https://asciinema.org/a/161977?speed=5&autoplay=1&loop=1
:alt: Testing a new role

Testing an existing role
-------------------

.. image:: https://asciinema.org/a/AkQ4KhxuGAxwn1YJX3tM5BZld.png
:target: https://asciinema.org/a/AkQ4KhxuGAxwn1YJX3tM5BZld?speed=5&autoplay=1&loop=1
:alt: Testing an existing role

Documentation
=============

https://molecule.readthedocs.io/

Contact
=======

IRC
---

Join us in the #molecule-users channel on `freenode`_.

.. _`freenode`: https://freenode.net

Forums
------

* `molecule-users`_
* `molecule-dev`_

.. _`molecule-users`: https://groups.google.com/forum/#!forum/molecule-users
.. _`molecule-dev`: https://groups.google.com/forum/#!forum/molecule-dev

Ansible Support
===============

Molecule requires Ansible version 2.2 or later.

.. _`Ansible`: https://docs.ansible.com

License
=======

`MIT`_

.. _`MIT`: https://github.com/metacloud/molecule/blob/master/LICENSE

The logo is licensed under the `Creative Commons NoDerivatives 4.0 License`_.
If you have some other use in mind, contact us.

.. _`Creative Commons NoDerivatives 4.0 License`: https://creativecommons.org/licenses/by-nd/4.0/



Project details


Download files

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

Files for molecule, version 2.10.1
Filename, size File type Python version Upload date Hashes
Filename, size molecule-2.10.1-py2-none-any.whl (168.0 kB) File type Wheel Python version py2 Upload date Hashes View
Filename, size molecule-2.10.1.tar.gz (4.5 MB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page