{"id":13821342,"url":"https://github.com/ansible-community/molecule-vagrant","last_synced_at":"2025-10-06T08:31:41.037Z","repository":{"id":40293823,"uuid":"217837826","full_name":"ansible-community/molecule-vagrant","owner":"ansible-community","description":"🚧 Moved to molecule-plugins","archived":true,"fork":false,"pushed_at":"2023-01-06T21:41:21.000Z","size":222,"stargazers_count":143,"open_issues_count":0,"forks_count":25,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-01-19T00:52:51.291Z","etag":null,"topics":["ansible","hacktoberfest","hashicorp","molecule","molecule-driver","vagrant"],"latest_commit_sha":null,"homepage":"https://github.com/ansible-community/molecule-plugins","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ansible-community.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null}},"created_at":"2019-10-27T10:22:07.000Z","updated_at":"2024-08-09T14:59:37.000Z","dependencies_parsed_at":"2023-02-06T09:16:59.238Z","dependency_job_id":null,"html_url":"https://github.com/ansible-community/molecule-vagrant","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible-community%2Fmolecule-vagrant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible-community%2Fmolecule-vagrant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible-community%2Fmolecule-vagrant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible-community%2Fmolecule-vagrant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ansible-community","download_url":"https://codeload.github.com/ansible-community/molecule-vagrant/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235515424,"owners_count":19002481,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","hacktoberfest","hashicorp","molecule","molecule-driver","vagrant"],"created_at":"2024-08-04T08:01:20.336Z","updated_at":"2025-10-06T08:31:35.601Z","avatar_url":"https://github.com/ansible-community.png","language":"Python","funding_links":[],"categories":["vagrant"],"sub_categories":[],"readme":"***********************\nMolecule Vagrant Plugin\n***********************\n\n.. image:: https://badge.fury.io/py/molecule-vagrant.svg\n   :target: https://badge.fury.io/py/molecule-vagrant\n   :alt: PyPI Package\n\n.. image:: https://zuul-ci.org/gated.svg\n   :target: https://dashboard.zuul.ansible.com/t/ansible/builds?project=ansible-community/molecule-vagrant\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n   :target: https://github.com/python/black\n   :alt: Python Black Code Style\n\n.. image:: https://img.shields.io/badge/Code%20of%20Conduct-silver.svg\n   :target: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html\n   :alt: Ansible Code of Conduct\n\n.. image:: https://img.shields.io/badge/Mailing%20lists-silver.svg\n   :target: https://docs.ansible.com/ansible/latest/community/communication.html#mailing-list-information\n   :alt: Ansible mailing lists\n\n.. image:: https://img.shields.io/badge/license-MIT-brightgreen.svg\n   :target: LICENSE\n   :alt: Repository License\n\nMolecule Vagrant is designed to allow use of Vagrant for provisioning of test\nresources.\n\nSupported Platforms\n===================\n\nThis driver relies on vagrant command line which is known to be problematic\nto install on several platforms. We do our best to perform CI/CD testing on\nmultiple platforms but some are disabled due to known bugs.\n\n* ✅ MacOS with VirtualBox - GitHub Actions\n* ✅ Fedora 32 with libvirt - Zuul\n* ✅ Ubuntu Bionic (18.04) with libvirt - Zuul\n* ❌ CentOS 8 with libvirt - Zuul DISABLED due to 1127_ and 11020_\n\nPlease **do not file bugs for unsupported platforms**. You are welcomed to\ncreate PRs that fix untested platform, as long they do not break existing ones.\n\n.. _`1127`: https://github.com/vagrant-libvirt/vagrant-libvirt/issues/1127\n.. _`11020`: https://github.com/hashicorp/vagrant/issues/11020\n\n\nDocumentation\n=============\n\nTo use this plugin, you'll need to set the ``driver`` and ``platform``\nvariables in your ``molecule.yml``. Here's a simple example using the\n`fedora/32-cloud-base`_ box:\n\n.. code-block:: yaml\n\n   driver:\n     name: vagrant\n\n   platforms:\n     - name: instance\n       box: fedora/32-cloud-base\n       memory: 512\n       cpus: 1\n\nHere's a full example with the libvirt provider:\n\n.. code-block:: yaml\n\n   driver:\n     name: vagrant\n     provider:\n       # Can be any supported provider (virtualbox, parallels, libvirt, etc)\n       # Defaults to virtualbox\n       name: libvirt\n     # Run vagrant up with --provision.\n     # Defaults to --no-provision)\n     provision: no\n     # vagrant-cachier configuration\n     # Defaults to 'machine'\n     # Any value different from 'machine' or 'box' will disable it\n     cachier: machine\n     # If set to false, set VAGRANT_NO_PARALLEL to '1'\n     # Defaults to true\n     parallel: true\n     # vagrant box to use by default\n     # Defaults to 'generic/alpine316'\n     default_box: 'generic/alpine316'\n\n   platforms:\n     - name: instance\n       # If specified, set host name to hostname, unless it's set to False and\n       # the host name won't be set. In all other cases (including default) use\n       # 'name' as host name.\n       hostname: foo.bar.com\n       # List of dictionaries mapped to `config.vm.network`\n       interfaces:\n         # `network_name` is the required identifier, all other keys map to\n         # arguments.\n         - auto_config: true\n           network_name: private_network\n           type: dhcp\n         - network_name: private_network\n           ip: 192.168.123.3\n         - network_name: forwarded_port\n           guest: 80\n           host: 8080\n       # List of raw Vagrant `config` options\n       instance_raw_config_args:\n         # use single quotes to avoid YAML parsing as dict due to ':'\n         - 'vm.synced_folder \".\", \"/vagrant\", type: \"rsync\"'\n         # Run 'uname' a provisionning step **needs 'provision: true' to work**\n         - 'vm.provision :shell, inline: \"uname\"'\n       # Dictionary of `config` options. Note that string values need to be\n       # explicitly enclosed in quotes.\n       config_options:\n         ssh.keep_alive: yes\n         ssh.remote_user: 'vagrant'\n         synced_folder: true\n       box: fedora/32-cloud-base\n       box_version: 32.20200422.0\n       box_url:\n       memory: 512\n       cpus: 1\n       # Dictionary of options passed to the provider\n       provider_options:\n         video_type: 'vga'\n       # List of raw provider options\n       provider_raw_config_args:\n         - cpuset = '1-4,^3,6'\n\n.. _`fedora/32-cloud-base`: https://app.vagrantup.com/fedora/boxes/32-cloud-base\n\n\nMore examples may be found in the ``molecule`` `scenarios directory`_.\nThey're the scenarios used by the CI.\n\n\n.. _get-involved:\n\nGet Involved\n============\n\n* Join us in the ``#ansible-devtools`` channel on `Libera`_.\n* Join the discussion in `molecule-users Forum`_.\n* Join the community working group by checking the `wiki`_.\n* Want to know about releases, subscribe to `ansible-announce list`_.\n* For the full list of Ansible email Lists, IRC channels see the\n  `communication page`_.\n\n.. _`Libera`: https://web.libera.chat/?channel=#ansible-devtools\n.. _`molecule-users Forum`: https://groups.google.com/forum/#!forum/molecule-users\n.. _`wiki`: https://github.com/ansible/community/wiki/Molecule\n.. _`ansible-announce list`: https://groups.google.com/group/ansible-announce\n.. _`communication page`: https://docs.ansible.com/ansible/latest/community/communication.html\n.. _`scenarios directory`: https://github.com/ansible-community/molecule-vagrant/tree/main/molecule_vagrant/test/scenarios/molecule\n.. _authors:\n\nAuthors\n=======\n\nMolecule Vagrant Plugin was created by Sorin Sbarnea based on code from\nMolecule.\n\n.. _license:\n\nLicense\n=======\n\nThe `MIT`_ License.\n\n.. _`MIT`: https://github.com/ansible-community/molecule-vagrant/blob/main/LICENSE\n\nThe logo is licensed under the `Creative Commons NoDerivatives 4.0 License`_.\n\nIf you have some other use in mind, contact us.\n\n.. _`Creative Commons NoDerivatives 4.0 License`: https://creativecommons.org/licenses/by-nd/4.0/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansible-community%2Fmolecule-vagrant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fansible-community%2Fmolecule-vagrant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansible-community%2Fmolecule-vagrant/lists"}