5454 Commits

Author SHA1 Message Date
Chris Roberts
d8de3016ea
Merge pull request #12992 from chrisroberts/vbox-networks-nfs
VirtualBox read networks support with hostonlynets
2022-11-14 12:14:03 -08:00
Chris Roberts
9e4047533d Customize #read_network_interfaces for hostonlynetworks
Adds an override for the #read_network_interfaces when hostonlynetworks
are in use to properly identify the hostonly network information from
the guest. This also adjusts the IP provided for the network to be
the first in the subnet.
2022-11-14 10:45:33 -08:00
Chris Roberts
cbddfbd028 Handle missing machine folder value
If the value of the machine folder can not be found in the
system properties, report a user friendly error message and
include relevant information in the logs for debugging.
2022-11-14 10:45:10 -08:00
Chris Roberts
45f5043508 Check for extra arguments in ssh info before appending 2022-11-08 16:48:57 -08:00
Benoît Peccatte
139893603f Fix sync_folder type rsync ignores ssh extra_args 2022-11-08 16:35:35 -08:00
Chris Roberts
0209cd21f9
Merge pull request #12832 from teh-syntax/main
Fixed issue provisioning ubuntu 22.04 python-dev has no install candidate
2022-11-08 15:25:22 -08:00
Chris Roberts
1dd008d65e
Merge pull request #12740 from rbrunckhorst/solaris-sed-fix
Fix sed command on Solaris guest
2022-11-08 15:09:08 -08:00
Chris Roberts
c75e05d4b1
Merge pull request #12913 from nist/File.exists
Replace deprecated File.exists? with File.exist?.
2022-11-08 15:07:21 -08:00
Chris Roberts
915283c685
Merge pull request #12989 from dcode/main
Fixes namespace of Google to global space
2022-11-08 14:56:43 -08:00
Derek Ditch
f581778c2c Fixes Google namespace resolution to global space 2022-11-08 08:50:01 -06:00
Chris Roberts
c0c4b80dcb Pass all options to host only network creation 2022-11-03 17:20:54 -07:00
Chris Roberts
c8a71882d3 Disable hostonly ip validation for vbox 7 on darwin 2022-11-03 17:18:10 -07:00
Chris Roberts
3604bacc19 Update virtualbox driver for hostonlynets support 2022-11-03 17:18:10 -07:00
Chris Roberts
60ec1943ea Fix file formatting 2022-11-03 11:55:50 -07:00
Chris Roberts
e7e1badbdc Add support for VirtualBox 7.0 2022-10-14 15:58:00 -07:00
Chris Roberts
716694e7b8
Merge pull request #12910 from chrisroberts/sudoers
Update NFS exports usage
2022-09-22 11:41:28 -07:00
Nicolas St-Laurent
6f9f88e055 Replace deprecated File.exists? with File.exist?. 2022-09-22 08:54:46 -04:00
sophia
9b48684226 Ensure last line from extracting the SSH_AUTH_SOCK is not nil 2022-09-21 15:25:44 -04:00
Chris Roberts
b21e4b0602 Use static file path when creating new exports file 2022-09-21 10:35:55 -07:00
sophia
49280286ad Strip new lines from error details
The error details message should just be one string without spacing
so the terminal can set a output length. This will allow messages
from Ruby and Go errors to have similar formating.
2022-09-19 15:14:42 -04:00
sophia
add66c4c2a Include message in rpc status error from ruby 2022-09-19 15:14:42 -04:00
sophia
6d4f769c87 Validate provider 2022-09-19 15:14:42 -04:00
sophia
f7cd08b208 Pass terminal output color option from Ruby to terminal plugin 2022-09-14 11:42:52 -04:00
sophia
1e39161a7b Ensure candidate ips are available when determining mount name 2022-09-02 10:42:27 -05:00
sophia
8bdb5e797d Pass in echo/secret ui input setting 2022-08-30 15:18:21 -05:00
Robert McMahon
3f2d648691 Fixed issue provisioning ubuntu 22.04 python-dev has no install candidate 2022-08-06 20:24:17 -04:00
Sophia Castellarin
aee8d7b96e
Merge pull request #12785 from dustymabe/dusty-el9
Enhancements for EL guests capabilities
2022-08-01 12:10:40 -05:00
Paul Hinze
6f44de5076
Merge pull request #12813 from sni/patch-1
Update nfs_client.rb for rocky 9
2022-07-29 11:12:47 -05:00
Dusty Mabe
3ad20c4c7b guests: add Alma Linux guest support 2022-07-29 09:22:50 -05:00
Dusty Mabe
d82d0fb657 guests: make CentOS/RHEL flavor detection more dynamic
Instead of having to update these flavor.rb files every time a
new version of CentOS/RHEL come out let's dynamically pick up
the version (7,8,9) from the machine.

This was inspired slightly by the Rocky Linux guest flavor.rb.
2022-07-29 09:22:50 -05:00
Dusty Mabe
4336aff67d guests/centos: use GUEST_DETECTION_NAME='centos' to ID CentOS
This migrates the CentOS guest plugin to identify machines by
what is in os-release rather than based on if the /etc/centos-release
file exists.

It just so happens that the Rocky Linux plugin is set up to inherit
directly from :redhat (not :centos) and thus the CentOS flavor is
attempted before Rocky in the depth first search. For some reason
the rockylinux/8 vagrant box still has the /etc/centos-release file
in it even though it's only supposed to inherit from RHEL.

The almalinux/9 box does not have /etc/centos-release.
2022-07-29 09:22:50 -05:00
Dusty Mabe
3b1e277f72 guests: RHEL 9 and CentOS stream 9 are out 2022-07-29 09:22:50 -05:00
Paul Hinze
4c34c9d26e
Merge pull request #12646 from hashicorp/push-heroku-print-output
Print output when pushing to Heroku
2022-07-28 16:36:55 -05:00
Paul Hinze
7c56c74bb6
Support and honor the "primary" option for Command plugins 2022-07-27 11:36:04 -05:00
Sophia Castellarin
5170d83c21
Merge pull request #325 from hashicorp/load-external-plugin-config
Find type to unany objects when mapping
2022-07-26 14:15:33 -05:00
sophia
c2d8f892ac Find type to unany objects when mapping
find_types works fine until you have a module which has the same name but different case. For example, the VagrantVmware package is HashiCorp::VagrantVMwareDesktop. All the protos are at Hashicorp::Vagrant::… So, you end up with this fun

Object.constants.select { |n| n.to_s.downcase == "hashicorp" }
=> [:HashiCorp, :Hashicorp]

So, when trying to walk down the modules to find the right type to unany to, Vagrant sometimes takes the wrong path (eg. Down the HashiCorp module instead of the Hashicorp module).

This change will keep a list of the parent modules when walking down the module list. This way if a dead end is reached then Vagrant can go a level back and keep searching for the correct class.
2022-07-26 12:22:28 -05:00
Chris Roberts
54502d5d66
Merge pull request #324 from hashicorp/fix-packaged-hang
Fix hanging commands when using packaged installation
2022-07-26 09:12:50 -07:00
Chris Roberts
b917dc466a Implement stop on the ruby internal service 2022-07-25 14:30:45 -07:00
Chris Roberts
fda4aef9c7 Make server instance accessible, return integer value 2022-07-25 14:29:38 -07:00
Paul Hinze
fc76f71ffc
Fix vbox multimachine by setting provider parallel default correctly
Turns out I misinterpreted the behavior of a ruby method with a default
being passed nil so I assumed :parallel was effectively defaulting to
true when it is the opposite.
2022-07-25 15:52:11 -05:00
Sophia Castellarin
fe4956ac83
Merge pull request #314 from hashicorp/ruby-load-global-plugins
Load global ruby plugins
2022-07-25 09:40:00 -05:00
Sven Nierlein
8fe4ec4c8d
Update nfs_client.rb for rocky 9
Starting a rocky 9 box (having nfs shares) fails with: `No match for argument: nfs-utils-lib`.
Apparently Rocky 9 does not have a `nfs-utils-lib` but mounting nfs shares without nfs-utils-lib works fine.
So updating the nfs client install to only install `nfs-utils-lib` if the package is available. That way older rhel clones
should continue to work as well.
2022-07-21 13:49:31 +02:00
Paul Hinze
9ab94f9971
Fix crashes on Vagrantfiles with provisioners
I forgot to handle nil in the new PluginOptions stuff, and options are
nil for Provisioner plugins.
2022-07-20 17:36:05 -05:00
Paul Hinze
957d0d3779
Bring plugin options back to Ruby for providers and synced folders
This removes the need for the validation workaround for Docker, because
box_updated is once again available in that context.

We don't technically need the SyncedFolder priorities back on the Ruby
side, but wiring them through for symmetry.

Depends on https://github.com/hashicorp/vagrant-plugin-sdk/pull/183
2022-07-15 12:14:47 -05:00
sophia
5bc7218a70 Load global ruby plugins 2022-07-13 14:08:46 -05:00
Paul Hinze
8d46b09a11
Fix Docker machines being lost in go side
By pruning machines that are in "unknown" status after each operation,
the Go code path exposed the fact that the Docker provider was not
updating the machine index during an "up" - leaving the state as
"unknown".

This is basically a bug within the Docker provider, so I think it's okay
to update the plugin code to correct this rather than working around the
issue in Go.

All we need to do is call `machine.state` instead of reaching through to
`machine.provider.state` while waiting for the container to be started.
That causes the extra logic for updating the machine index in
`machine.state` to fire.
2022-07-13 14:04:32 -05:00
Chris Roberts
da9892a62f Use #to_proto on class match, otherwise convert 2022-07-11 15:09:46 -07:00
Chris Roberts
2572d4f62b Include class where error originated 2022-07-11 15:09:21 -07:00
Chris Roberts
e082fd6359 Machine mapper no longer needs to load through environment 2022-07-11 15:09:08 -07:00
Chris Roberts
67895c927e Allow a machine client to load its target 2022-07-11 15:08:53 -07:00