vagrant-parallels 2.2.6 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/LICENSE.txt +1 -1
- data/README.md +1 -1
- data/lib/vagrant-parallels/action/prepare_nfs_settings.rb +1 -1
- data/lib/vagrant-parallels/driver/base.rb +32 -5
- data/lib/vagrant-parallels/driver/meta.rb +2 -1
- data/lib/vagrant-parallels/version.rb +1 -1
- metadata +20 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 45a092a3894860152f2315793cb2a6ca541bc3488b168e3e08c9ba9637f8c867
|
4
|
+
data.tar.gz: 7e6a76e6734bad9691232004722d0cc04f5bc53992798bd6e5074341dce985af
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5ff72d8b55fde7f2d4444048fe9c736e0f312c61f8b5098b0ac5569a1b3415a6c6671b9c54375190cbcd43aebf55b74fbde681ae9ff2c77f0144bd199a525b60
|
7
|
+
data.tar.gz: 5181b7a0c84d03f593e7e4102e8289c95c292a5328566802f017851617259911012745707b78799bf113bd96e78200f95a6762abbb85135181883c273439dd6b
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
## 2.3.1 (March 23, 2022)
|
2
|
+
BUG FIXES:
|
3
|
+
- Fix the detection of VM IP. Wait for the IP to become available to
|
4
|
+
avoid connection issues and Vagrant warnings.
|
5
|
+
[[GH-440](https://github.com/Parallels/vagrant-parallels/issues/440)]
|
6
|
+
|
7
|
+
## 2.3.0 (March 22, 2022)
|
8
|
+
IMPROVEMENTS:
|
9
|
+
- Support fetching the VM IP using prlctl
|
10
|
+
[[GH-434](https://github.com/Parallels/vagrant-parallels/pull/434)].
|
11
|
+
- Update gem dependensies and support Ruby 3.0
|
12
|
+
[[GH-437](https://github.com/Parallels/vagrant-parallels/pull/437)],
|
13
|
+
[[GH-439](https://github.com/Parallels/vagrant-parallels/pull/439)].
|
14
|
+
|
15
|
+
BUG FIXES:
|
16
|
+
- Fixes SSH access to `.macvm` VMs on Macs with Apple M-series chip
|
17
|
+
[[GH-435](https://github.com/Parallels/vagrant-parallels/issues/435)]
|
18
|
+
|
1
19
|
## 2.2.6 (December 19, 2022)
|
2
20
|
BUG FIXES:
|
3
21
|
- Fix the macOS VMs support on ARM-based Mac
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -53,6 +53,6 @@ please report it on the [Issue Tracker](https://github.com/Parallels/vagrant-par
|
|
53
53
|
|
54
54
|
* Author: Youssef Shahin <yshahin@gmail.com>
|
55
55
|
* Author: Mikhail Zholobov <legal90@gmail.com>
|
56
|
-
* Copyright 2013-
|
56
|
+
* Copyright 2013-2023, Parallels International GmbH.
|
57
57
|
|
58
58
|
Vagrant Parallels Provider is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).
|
@@ -37,7 +37,7 @@ module VagrantPlugins
|
|
37
37
|
# The ! indicates that this method modifies its argument.
|
38
38
|
def add_ips_to_env!(env)
|
39
39
|
host_ip = @machine.provider.driver.read_shared_interface[:ip]
|
40
|
-
guest_ip = @machine.provider.driver.
|
40
|
+
guest_ip = @machine.provider.driver.ssh_ip
|
41
41
|
|
42
42
|
# If we couldn't determine either guest's or host's IP, then
|
43
43
|
# it is probably a bug. Display an appropriate error message.
|
@@ -403,11 +403,13 @@ module VagrantPlugins
|
|
403
403
|
end
|
404
404
|
end
|
405
405
|
|
406
|
-
# Returns an IP of the virtual machine
|
407
|
-
# adapter is configured for this VM
|
406
|
+
# Returns an IP of the virtual machine fetched from the DHCP lease file.
|
407
|
+
# It requires that Shared network adapter is configured for this VM
|
408
|
+
# and it obtains an IP via DHCP.
|
409
|
+
# Returns an empty string if the IP coudn't be determined this way.
|
408
410
|
#
|
409
411
|
# @return [String] IP address leased by DHCP server in "Shared" network
|
410
|
-
def
|
412
|
+
def read_guest_ip_dhcp
|
411
413
|
mac_addr = read_mac_address.downcase
|
412
414
|
leases_file = '/Library/Preferences/Parallels/parallels_dhcp_leases'
|
413
415
|
leases = {}
|
@@ -430,6 +432,16 @@ module VagrantPlugins
|
|
430
432
|
leases.max_by { |_ip, lease_time| lease_time }.first
|
431
433
|
end
|
432
434
|
|
435
|
+
# Returns an IP of the virtual machine fetched from prlctl.
|
436
|
+
# Returns an empty string if the IP coudn't be determined this way.
|
437
|
+
#
|
438
|
+
# @return [String] IP address returned by `prlctl list -f` command
|
439
|
+
def read_guest_ip_prlctl
|
440
|
+
vm_info = json { execute_prlctl('list', @uuid, '--full', '--json') }
|
441
|
+
ip = vm_info.first.fetch('ip_configured', '')
|
442
|
+
ip == '-' ? '' : ip
|
443
|
+
end
|
444
|
+
|
433
445
|
# Returns path to the Parallels Tools ISO file.
|
434
446
|
#
|
435
447
|
# @param [String] guest_os Guest os type: "linux", "darwin" or "windows"
|
@@ -757,11 +769,26 @@ module VagrantPlugins
|
|
757
769
|
end
|
758
770
|
end
|
759
771
|
|
760
|
-
# Reads the SSH IP of this VM
|
772
|
+
# Reads the SSH IP of this VM from DHCP lease file or from `prlctl list`
|
773
|
+
# command - whatever returns a non-empty result first.
|
774
|
+
# The method with DHCP does not work for *.macvm VMs on Apple M-series Macs,
|
775
|
+
# so we try both sources here.
|
761
776
|
#
|
762
777
|
# @return [String] IP address to use for SSH connection to the VM.
|
763
778
|
def ssh_ip
|
764
|
-
|
779
|
+
5.times do
|
780
|
+
ip = read_guest_ip_dhcp
|
781
|
+
return ip unless ip.empty?
|
782
|
+
|
783
|
+
ip = read_guest_ip_prlctl
|
784
|
+
return ip unless ip.empty?
|
785
|
+
|
786
|
+
sleep 2
|
787
|
+
end
|
788
|
+
|
789
|
+
# We didn't manage to determine IP - return nil and
|
790
|
+
# expect SSH client to do a retry
|
791
|
+
return nil
|
765
792
|
end
|
766
793
|
|
767
794
|
# Reads the SSH port of this VM.
|
@@ -87,7 +87,8 @@ module VagrantPlugins
|
|
87
87
|
:read_bridged_interfaces,
|
88
88
|
:read_current_snapshot,
|
89
89
|
:read_forwarded_ports,
|
90
|
-
:
|
90
|
+
:read_guest_ip_dhcp,
|
91
|
+
:read_guest_ip_prlctl,
|
91
92
|
:read_guest_tools_state,
|
92
93
|
:read_guest_tools_iso_path,
|
93
94
|
:read_host_only_interfaces,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-parallels
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mikhail Zholobov
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2023-03-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
@@ -45,14 +45,14 @@ dependencies:
|
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: 3.
|
48
|
+
version: '3.11'
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: 3.
|
55
|
+
version: '3.11'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: rspec-its
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,9 +67,23 @@ dependencies:
|
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: 1.3.0
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: webrick
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 1.8.0
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: 1.8.0
|
70
84
|
description: Enables Vagrant to manage Parallels virtual machines.
|
71
85
|
email:
|
72
|
-
-
|
86
|
+
- legal90@gmail.com
|
73
87
|
- yshahin@gmail.com
|
74
88
|
executables: []
|
75
89
|
extensions: []
|
@@ -152,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
152
166
|
- !ruby/object:Gem::Version
|
153
167
|
version: 1.3.6
|
154
168
|
requirements: []
|
155
|
-
rubygems_version: 3.
|
169
|
+
rubygems_version: 3.2.33
|
156
170
|
signing_key:
|
157
171
|
specification_version: 4
|
158
172
|
summary: Parallels provider for Vagrant.
|