Unable to configure network with Vagrant/VirtualBox
neclimdul opened this issue · 3 comments
👻 Brief Description
This is a continuation of the problems from #459 I guess. With Ubuntu 22.04 vagrant gets install with Ruby 3 and I can't figure out a way to get the fixes in the related threads to work. The fix of "use ruby2.7" isn't really available best I can tell at least not without some sort of rbenv hacks.
Version
$ bundle exec kitchen --version
Test Kitchen version 3.2.2
$ vagrant --version
Vagrant 2.2.19
- kitchen-vagrant (1.11.0)
Environment
Ubuntu 22.04
Scenario
Get test kitchen to run with a configured network.
Steps to Reproduce
Start with ubuntu 22.04. Install vagrant and bundler.
.kitchen.yml
---
driver:
name: vagrant
platforms:
- name: ubuntu-22.04
suites:
- name: default
driver:
network:
- ["private_network", {ip: "10.33.30.6"}]
Gemfile
source 'https://rubygems.org'
gem 'kitchen-vagrant'
gem 'test-kitchen'
bundle install
bundle exec kitchen verify
Expected Result
Test kitchen runs without errors.
Actual Result
-----> Starting Test Kitchen (v3.2.2)
-----> Creating <default-ubuntu-2204>...
/usr/share/rubygems-integration/all/gems/vagrant-2.2.19/plugins/kernel_v2/config/vm.rb:319:in `network': wrong number of arguments (given 2, expected 1) (ArgumentError)
from /home/.../tmp/.kitchen/kitchen-vagrant/default-ubuntu-2204/Vagrantfile:5:in `block in <top (required)>'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/v2/loader.rb:37:in `load'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/loader.rb:126:in `block (2 levels) in load'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/loader.rb:119:in `each'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/loader.rb:119:in `block in load'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/loader.rb:116:in `each'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/config/loader.rb:116:in `load'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/vagrantfile.rb:29:in `initialize'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/environment.rb:793:in `new'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/environment.rb:793:in `vagrantfile'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/environment.rb:974:in `process_configured_plugins'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/lib/vagrant/environment.rb:178:in `initialize'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/bin/vagrant:194:in `new'
from /usr/share/rubygems-integration/all/gems/vagrant-2.2.19/bin/vagrant:194:in `<top (required)>'
from /usr/bin/vagrant:25:in `load'
from /usr/bin/vagrant:25:in `<main>'
>>
...
➕ Additional context
I understand this is kinda a mess and there might not be a lot this project can do since this is a problem with vagrant but hoping there's something that can be done to support writing Vargant files that can run in Ruby 3.
I ran into this issue as well; same errors. I downgraded from Vagrant 2.2.19 to 2.2.18 and the Vagrantfile generated by Test Kitchen (this driver) are properly read by Vagrant and the VM is created.
this is to be marked as closed when we release an updated gem that has the fix, only PR is merged to main as of now
The recently released 1.12.1 contains the fix for this issue.
@vkarve-chef or @neclimdul, please close this issue.