diff --git a/src/molecule_plugins/vagrant/modules/vagrant.py b/src/molecule_plugins/vagrant/modules/vagrant.py index 0e09428..769a9a0 100755 --- a/src/molecule_plugins/vagrant/modules/vagrant.py +++ b/src/molecule_plugins/vagrant/modules/vagrant.py @@ -369,6 +369,7 @@ def merge_dicts(a: MutableMapping, b: MutableMapping) -> MutableMapping: class VagrantClient: def __init__(self, module) -> None: self._module = module + self.provider = self._module.params["provider_name"] self.provision = self._module.params["provision"] self.cachier = self._module.params["cachier"] @@ -456,9 +457,10 @@ def up(self): changed = False if self._running() != len(self.instances): changed = True + provider = self.provider provision = self.provision with contextlib.suppress(Exception): - self._vagrant.up(provision=provision) + self._vagrant.up(provider=provider, provision=provision) # NOTE(retr0h): Ansible wants only one module return `fail_json` # or `exit_json`. @@ -714,7 +716,7 @@ def main(): "provider_options": {"type": "dict", "default": {}}, "provider_override_args": {"type": "list", "default": None}, "provider_raw_config_args": {"type": "list", "default": None}, - "provider_name": {"type": "str", "default": "virtualbox"}, + "provider_name": {"type": "str", "required": False, "default": "virtualbox"}, "default_box": {"type": "str", "default": None}, "provision": {"type": "bool", "default": False}, "force_stop": {"type": "bool", "default": False},