Skip to main content

Vagrant Molecule Plugin :: run molecule tests using Vagrant

Project description

PyPI Package Python Black Code Style Ansible Code of Conduct Ansible mailing lists Repository License

Molecule Vagrant is designed to allow use of Vagrant for provisioning of test resources.

Supported Platforms

This driver relies on vagrant command line which is known to be problematic to install on several platforms. We do our best to perform CI/CD testing on multiple platforms but some are disabled due to known bugs.

  • ✅ MacOS with VirtualBox - GitHub Actions
  • ✅ Fedora 32 with libvirt - Zuul
  • ✅ Ubuntu Bionic (18.04) with libvirt - Zuul
  • ❌ CentOS 8 with libvirt - Zuul DISABLED due to 1127 and 11020

Please do not file bugs for unsupported platforms. You are welcomed to create PRs that fix untested platform, as long they do not break existing ones.


To use this plugin, you’ll need to set the driver and platform variables in your molecule.yml. Here’s a simple example using the fedora/32-cloud-base box:

  name: vagrant

  - name: instance
    box: fedora/32-cloud-base
    memory: 512
    cpus: 1

Here’s a full example with the libvirt provider:

  name: vagrant
    # Can be any supported provider (VBox, Parallels, libvirt, etc)
    name: libvirt

  - name: instance
    # List of dictionaries mapped to ``
      # `network_name` is the required identifier, all other keys map to
      # arguments.
      - network_name: forwarded_port
        guest: 80
        host: 8080
    # List of raw Vagrant `config` options
      - 'vagrant.plugins = ["vagrant-libvirt"]'
    # Dictionary of `config` options. Note that string values need to be
    # explicitly enclosed in quotes.
      ssh.keep_alive: yes
      ssh.remote_user: "'vagrant'"
    box: fedora/32-cloud-base
    box_version: 32.20200422.0
    memory: 512
    cpus: 1
    # Dictionary of options passed to the provider
      video_type: "'vga'"
    # List of raw provider options
      - "cpuset = '1-4,^3,6'"
    provision: no

Get Involved


Molecule Vagrant Plugin was created by Sorin Sbarnea based on code from Molecule.


The MIT License.

The logo is licensed under the Creative Commons NoDerivatives 4.0 License.

If you have some other use in mind, contact us.

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-vagrant, version 0.6.1
Filename, size File type Python version Upload date Hashes
Filename, size molecule_vagrant-0.6.1-py3-none-any.whl (26.3 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size molecule-vagrant-0.6.1.tar.gz (27.3 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page