Commit graph

641 commits

Author SHA1 Message Date
oss-core-libraries-dashboard[bot]
1a8c7eb042
[COMPLIANCE] Update Copyright and License Headers (Batch 4 of 7) (#13762)
Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
2025-12-22 16:46:54 +05:30
oss-core-libraries-dashboard[bot]
73228596f4
[COMPLIANCE] Update Copyright and License Headers (Batch 3 of 7) (#13763)
Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
2025-12-22 16:46:39 +05:30
BDoerrAnschuetz
bba4fbab5e
Add LSILogicSas to the list of supported storage controllers for VirtualBox (#13692)
Some checks failed
/ sync-acceptance (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.1 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.2 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.3 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.4 (push) Has been cancelled
2025-12-12 20:21:04 +05:30
oss-core-libraries-dashboard[bot]
ea57f40b89
[COMPLIANCE] Update Copyright and License Headers (#13752)
Some checks failed
/ sync-acceptance (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.1 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.2 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.3 (push) Has been cancelled
Vagrant Ruby Tests / Vagrant unit tests on Ruby 3.4 (push) Has been cancelled
Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
2025-12-04 17:07:40 +05:30
Corey Hemminger
4978fab045
Add Vbox 7.2 support (#13709)
* Add Vbox 7.2 support

Signed-off-by: Corey Hemminger <hemminger@hotmail.com>

* update comment for 7.2

Signed-off-by: Corey Hemminger <hemminger@hotmail.com>

---------

Signed-off-by: Corey Hemminger <hemminger@hotmail.com>
2025-08-19 13:54:24 +05:30
Chris Roberts
f4fc2c742a
Update cloud-init behavior and iso generation
This includes a couple modifications to the cloud-init behavior.
First, the cloud-init wait action will now write a sentinel file
after successfully waiting for cloud-init. This results in subsequent
boots of the machine to skip executing the cloud-init wait command
as cloud-init is only executed on the initial boot.

Second, the cloud-init setup action will check for the sentinel file
written by the cloud-init wait action, and if detected it will skip
the cloud-init setup. When creating the ISO for cloud-init, a second
sentinel file will be used to log the path of the generated ISO
file. If the file exists, the ISO generation process will be skipped.
2025-05-14 12:57:03 -07:00
Chris Roberts
b216228bf0
Fix syntax in constant definition, add test coverage for ranges
Adds missing comma in the constant definition and add test coverage
for when no configuration file is available to validate acceptable
addresses within defined constant values.
2025-05-13 09:35:57 -07:00
Ruben Kerkhof
75adce64ba
Allow link-local IPv6 address on host-only network
Since VirtualBox 6.1.28, if you want to create a host-only network,
virtualbox checks if the ip is in a certain range.

According to the manual (https://www.virtualbox.org/manual/ch06.html),
ipv6 link-local addresses are allowed so add the IPv6 link-local range.
2025-05-13 09:05:27 -07:00
Chris Roberts
89a5bb2086
Fix VirtualBox private network setup
Include network display name within the output of the
`#read_host_only_interfaces` driver method. When matching
the private network name, use the `#read_host_only_interfaces`
method and not the `#read_host_only_networks` method which
is darwin specific. Backport the `display_name` inclusion
to old driver versions for consistent behavior.

Fixes #13655
2025-04-28 10:08:43 -07:00
Chris Roberts
7e283bd185
Use interface name for hostonly network configuration
When provided a name for the hostonly network in the VirtualBox
provider, always use the interface name in the final configuration.
2025-04-08 14:54:55 -07:00
Chris Roberts
ea25996b21
Update Vagrant behavior outside of installers
Remove customized require behaviors and modify the bin executable
to check for missing tools that Vagrant expects to exist when
running outside of an installer.
2025-04-02 11:40:17 -07:00
Vitalii Ishchenko
28bb8ee1b5 Add VirtioSCSI to the list of supported storage controllers for VirtualBox 2025-01-29 23:18:08 +00:00
Chris Roberts
8b06640fcf
Use helper for require calls 2024-11-06 17:33:00 -08:00
Chris Roberts
6be63b92e2
Force encoding on command output strings
Incompatible encodings will result in an error when the exception
is translated. The outputs may not be UTF-8 encoded so force
the encoding when providing the values in the exception.
2024-11-01 13:43:24 -07:00
Chris Roberts
85d97f5383
Add support for VirtualBox 7.1 2024-10-30 12:06:29 -07:00
Allison Larson
c4fa5df4f7 Add :paused to valid Virtualbox boot state 2024-08-26 09:45:50 -07:00
Chris Roberts
67599f89e2
Cast to string to prevent error if no match is found 2024-07-10 13:53:41 -07:00
Paul Cacheux
f67d4f75eb
virtualbox version detection: handle WARNING lines 2024-05-20 14:50:01 +02:00
Chris Roberts
6db640fb14 Adjust vbox hostonly config for ipv6
Check the type when an ipv6 address is being used. If the type does not
have a `6` suffix, append it.
2023-09-11 17:48:02 -07:00
Chris Roberts
f4142705ab
Merge pull request #13241 from lordgurke/fix-vagrant-13226-wrong-filename
Remove duplicate appending of "6" to network type
2023-09-11 17:45:34 -07:00
Chris Roberts
eb5aaed72d
Merge pull request #13259 from chrisroberts/remove-exps
Remove experimental checks
2023-09-11 17:31:58 -07:00
Chris Roberts
513be177d3 Remove experimental checks
Removes experimental checks on existing experimental features.
2023-09-08 14:15:34 -07:00
Chris Roberts
e958c6183a Adds initial HCP config support
Adds initial basic support for HCP based configuration in vagrant-go.
The initalization process has been updated to remove Vagrantfile parsing
from the client, moving it to the runner using init jobs for the basis
and the project (if there is one). Detection is done on the file based
on extension for Ruby based parsing or HCP based parsing.

Current HCP parsing is extremely simple and currently just a base to
build off. Config components will be able to implement an `Init`
function to handle receiving configuration data from a non-native source
file. This will be extended to include a default approach for injecting
defined data in the future.

Some cleanup was done in the state around validations. Some logging
adjustments were applied on the Ruby side for better behavior
consistency.

VirtualBox provider now caches locale detection to prevent multiple
checks every time the driver is initialized.
2023-09-07 17:26:10 -07:00
hashicorp-copywrite[bot]
36a312ee26
add missing license headers and update copyright file headers to BUS-1.1 2023-08-10 21:53:25 +01:00
Max
8ecfe32021
Remove duplicate appending of "6" to network type
To distinct between IPv4 and IPv6 configuration, a "6" was added to the network configuration type if an IPv6 address should be configured. This is now duplicate, as with pull 13024 the same thing is already done prior, thus leading to a duplicate "6" at the end of the network config type, i.e. "static66".
2023-07-30 17:33:58 +02:00
Chris Roberts
8e98c5ff1c Update locale preference for the virtualbox driver
Update the locale preference list to prefer UTF-8 variations of `C` when
available.
2023-05-17 11:59:05 -07:00
Chris Roberts
d53d8e61bc Fix LANG value used for VirtualBox driver
The VirtualBox driver sets the LANG env var to prevent localized output
being returned when executing CLI commands. If the `locale` command is
present, do a best effort lookup to determine the properly value to use
for the LANG environment variable.
2023-05-15 11:01:29 -07:00
sophia
38e6e86d80 Removes check for hyperv being enabled when verifying virtualbox
is usable on windows. Virtualbox has supported running with hyperv
since version 6.0.0 https://www.virtualbox.org/wiki/Changelog-6.0.
(Virtualbox 6.0 is currently EOL) So, this check is no longer
required.
2023-02-17 11:38:28 -08:00
sophia
28574348b9 Read only machine port forward info
In the VM config file port forward information is captured in the
Snapshot defition as well as the VM definition. This causes duplicates
in port forward entries if the file is queried for all available
network adapters. Querying the VM config file for the the Network
Adapters only part of the Machine definition resolves this and
yields the most up to date port forward info.
2023-01-12 12:02:00 -08:00
Chris Roberts
516ac4b0ab Set address type when not provided
When an address is provided and the type has not been explicitly
provided, parse the address and automatically set the type.
2022-12-09 13:22:37 -08:00
Chris Roberts
5cbf66b93c Update log output to warn 2022-12-08 11:14:46 -08:00
Chris Roberts
32aef6c48c Rescue address errors and adjust host address
Rescue any address errors logging them and ignoring the address. Update
how the host address is determined based on the network configuration.
Host address will be either the lowest address assignable via dhcp
configuration or first address available within the configured subnet.
2022-11-21 14:07:29 -08:00
Chris Roberts
8549450cff
Merge pull request #12994 from chrisroberts/vbox-locale
Force LANG when executing commands
2022-11-14 13:27:48 -08:00
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
f7e5a9d199 Force LANG when executing commands
This forces the LANG enviroment variable to be set to `"C"` when
executing VBoxManage commands. Doing this prevents localization of
output which causes failures of the VirtualBox driver when scanning
for information.
2022-11-14 10:45:47 -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
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
Paul Hinze
eacb798a71
Fix action hooks running twice in destroy_on_error scenarios
The "destroy_on_error" functionality for `vagrant up` is implemented in
the `recover()` action chain, and works by firing off a destroy action
from inside that chain.

This is all well and good, but it copies its existing `env` which has
had `action_name` set for the up action. This was causing action_hooks
for up actions to attach to this destroy action stack.

Setting the action_name explicitly in the env before firing the runner
should correct the behavior. I'm not sure if raw_action_name is used
anywhere but I figured it was better to be consistent vs conservative in
what we change.
2022-04-25 12:26:56 -05:00
sophia
1aabc7c4b5
Add mapper for a Class to String 2022-04-25 12:26:12 -05:00
sophia
04a6f762af
Make synced folder mapping work 2022-04-25 12:26:11 -05:00
sophia
e86dc5958a
Clean up debugging cruft 2022-04-25 12:24:09 -05:00
sophia
5ecb1cdc26
Get/set machine id 2022-04-25 12:24:09 -05:00
Chris Roberts
ac92fd8e1d Access provider driver through machine for version check
Updates the VirtualBox version check for network range validation
    to access the driver via the machine instances provider within the
    passed env.
2021-11-03 09:32:41 -07:00
Chris Roberts
2f9a0ac253 Adjust default range 2021-10-29 09:43:47 -07:00
Chris Roberts
b23095eac5 Remove freeze on version to resolve comparison 2021-10-29 08:47:43 -07:00