vagrant-parallels 1.7.8 → 2.0.0
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 +44 -34
- data/README.md +23 -25
- data/lib/vagrant-parallels/action/import.rb +2 -12
- data/lib/vagrant-parallels/action/prepare_clone_snapshot.rb +1 -2
- data/lib/vagrant-parallels/action/sane_defaults.rb +3 -18
- data/lib/vagrant-parallels/config.rb +1 -1
- data/lib/vagrant-parallels/driver/base.rb +0 -16
- data/lib/vagrant-parallels/driver/meta.rb +6 -8
- data/lib/vagrant-parallels/driver/pd_11.rb +2 -2
- data/lib/vagrant-parallels/driver/pd_12.rb +1 -1
- data/lib/vagrant-parallels/plugin.rb +0 -1
- data/lib/vagrant-parallels/synced_folder.rb +2 -2
- data/lib/vagrant-parallels/version.rb +1 -1
- data/locales/en.yml +4 -4
- metadata +3 -4
- data/lib/vagrant-parallels/driver/pd_10.rb +0 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a40565034c3032c1536e75c37bd10287c87200e0
|
4
|
+
data.tar.gz: fcf16876294f17f6843c1acbe698ba111cbfee5f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f983701a46e36b8d189d80c6906868d91b3a35840b849cdcdc301ec8f660cc851de3ebbb045eb924dd8dd201b1aebe3fd2c8a69f1db8425b2bb2380d30b7b6b0
|
7
|
+
data.tar.gz: bb2f8d87c5fa5b3332cdcbdea5a9e411ddf3941bfcc12cc4e8b5693edb114aa7295f3ab63f627721fe3a87c860d1a4a42b7e3f3a066e498b1861522cea1a1999
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
## 2.0.0 (November 19, 2018)
|
2
|
+
BREAKING CHANGES:
|
3
|
+
- **Linked Clone feature is enabled by default.**
|
4
|
+
Now each time when you create a new virtual machine with `vagrant up` it is
|
5
|
+
created as a linked clone of the box image (instead of the full clone, as it
|
6
|
+
was before). Read more about it:
|
7
|
+
[Full Clone vs Linked Clone](http://parallels.github.io/vagrant-parallels/docs/configuration.html#linked_clone).
|
8
|
+
- **Dropped support of Parallels Desktop 10**. It reached
|
9
|
+
[End-of-Life and End-of-Support](http://kb.parallels.com/eu/122533).
|
10
|
+
|
1
11
|
## 1.7.8 (November 18, 2017)
|
2
12
|
BUG FIXES:
|
3
13
|
- Fixed warning messages with Vagrant v2.0.1
|
@@ -12,40 +22,40 @@ BUG FIXES:
|
|
12
22
|
## 1.7.6 (July 31, 2017)
|
13
23
|
BUG FIXES:
|
14
24
|
- Fixed `vagrant up` failure if the box image was automatically renamed due
|
15
|
-
to the name conflict.
|
25
|
+
to the name conflict.
|
16
26
|
[[GH-303](https://github.com/Parallels/vagrant-parallels/issues/303)]
|
17
27
|
|
18
28
|
|
19
29
|
## 1.7.5 (May 27, 2017)
|
20
30
|
BUG FIXES:
|
21
31
|
- Fixed compatibility with Vagrant v1.9.5+. `nokogiri` gem is defined as
|
22
|
-
a plugin runtime dependency.
|
32
|
+
a plugin runtime dependency.
|
23
33
|
[[GH-297](https://github.com/Parallels/vagrant-parallels/issues/297)],
|
24
34
|
[[GH-298](https://github.com/Parallels/vagrant-parallels/pull/298)]
|
25
|
-
|
26
|
-
**NB!** To use the plugin with Vagrant v1.9.5 you should (re)install it with
|
35
|
+
|
36
|
+
**NB!** To use the plugin with Vagrant v1.9.5 you should (re)install it with
|
27
37
|
`NOKOGIRI_USE_SYSTEM_LIBRARIES` enabled:
|
28
38
|
```bash
|
29
39
|
$ vagrant plugin uninstall vagrant-parallels
|
30
40
|
$ NOKOGIRI_USE_SYSTEM_LIBRARIES=true vagrant plugin install vagrant-parallels
|
31
41
|
```
|
32
|
-
|
42
|
+
|
33
43
|
|
34
44
|
## 1.7.4 (April 20, 2017)
|
35
45
|
IMPROVEMENTS:
|
36
|
-
- Make start action (`"vagrant up"`) run provisioners if VM is running.
|
46
|
+
- Make start action (`"vagrant up"`) run provisioners if VM is running.
|
37
47
|
[[GH-294](https://github.com/Parallels/vagrant-parallels/pull/294)]
|
38
48
|
|
39
49
|
BUG FIXES:
|
40
|
-
- Properly handle `"paused"` VM state for up and halt actions.
|
50
|
+
- Properly handle `"paused"` VM state for up and halt actions.
|
41
51
|
[[GH-295](https://github.com/Parallels/vagrant-parallels/pull/295)]
|
42
52
|
- synced_folder: Escape special characters in Windows-specific guest paths.
|
43
|
-
[[GH-296](https://github.com/Parallels/vagrant-parallels/pull/296)]
|
44
|
-
|
53
|
+
[[GH-296](https://github.com/Parallels/vagrant-parallels/pull/296)]
|
54
|
+
|
45
55
|
|
46
56
|
## 1.7.3 (February 28, 2017)
|
47
57
|
BUG FIXES:
|
48
|
-
- Fix exceptions related to `nokogiri` gem.
|
58
|
+
- Fix exceptions related to `nokogiri` gem.
|
49
59
|
[[GH-291](https://github.com/Parallels/vagrant-parallels/issues/291)],
|
50
60
|
[[GH-292](https://github.com/Parallels/vagrant-parallels/issues/292)]
|
51
61
|
|
@@ -58,28 +68,28 @@ BUG FIXES:
|
|
58
68
|
|
59
69
|
## 1.7.1 (December 7, 2016)
|
60
70
|
FEATURES:
|
61
|
-
- **Guest capability for installing Parallels Tools in Windows.** Now it is
|
71
|
+
- **Guest capability for installing Parallels Tools in Windows.** Now it is
|
62
72
|
possible to install/upgrade Parallels Tools in Windows guests using
|
63
73
|
the provider option `update_guest_tools`. [[GH-284](https://github.com/Parallels/vagrant-parallels/pull/284)]
|
64
|
-
|
74
|
+
|
65
75
|
BUG FIXES:
|
66
76
|
- Fix issues of auto-updating Parallels Tools in Linux guests with Parallels Desktop 12+.
|
67
77
|
[[GH-283](https://github.com/Parallels/vagrant-parallels/pull/283)],
|
68
78
|
[[GH-282](https://github.com/Parallels/vagrant-parallels/pull/282)],
|
69
79
|
[[GH-281](https://github.com/Parallels/vagrant-parallels/pull/281)]
|
70
|
-
|
80
|
+
|
71
81
|
|
72
82
|
## 1.7.0 (November 15, 2016)
|
73
83
|
BREAKING CHANGES:
|
74
|
-
- **Dropped support of Parallels Desktop 8 and 9**. These versions have
|
84
|
+
- **Dropped support of Parallels Desktop 8 and 9**. These versions have
|
75
85
|
reached their [End-of-Life and End-of-Support](http://kb.parallels.com/eu/122533).
|
76
86
|
- **Removed customization options, which were previously deprecated:** [[GH-271](https://github.com/Parallels/vagrant-parallels/pull/271)]
|
77
87
|
- "use_linked_clone" - use `linked_clone` instead.
|
78
88
|
- "regen_box_uuid" - use `regen_src_uuid` instead.
|
79
|
-
- "optimize_power_consumption".
|
80
|
-
|
89
|
+
- "optimize_power_consumption".
|
90
|
+
|
81
91
|
FEATURES:
|
82
|
-
- **IPv6 Private Networks:** Private networking now supports IPv6.
|
92
|
+
- **IPv6 Private Networks:** Private networking now supports IPv6.
|
83
93
|
This only works with Parallels Desktop 12 and higher.
|
84
94
|
[[GH-273](https://github.com/Parallels/vagrant-parallels/pull/273)]
|
85
95
|
|
@@ -94,23 +104,23 @@ DEPRECATIONS:
|
|
94
104
|
[[GH-260](https://github.com/Parallels/vagrant-parallels/pull/260)]
|
95
105
|
|
96
106
|
IMPROVEMENTS:
|
97
|
-
- Allow to package linked clones with `vagrant package`. External disk images
|
98
|
-
will be automatically copied, so the resulted box become a full-sized
|
107
|
+
- Allow to package linked clones with `vagrant package`. External disk images
|
108
|
+
will be automatically copied, so the resulted box become a full-sized
|
99
109
|
standalone VM. [[GH-262](https://github.com/Parallels/vagrant-parallels/pull/262)]
|
100
110
|
- Handle the situation when host machine is not connected to Shared network.
|
101
111
|
With Parallels Desktop 11.2.1+ Vagrant will connect it automatically. With earlier
|
102
|
-
versions, the human-readable error message will be displayed.
|
112
|
+
versions, the human-readable error message will be displayed.
|
103
113
|
[[GH-266](https://github.com/Parallels/vagrant-parallels/pull/266)]
|
104
|
-
- Disable home folder sharing by default (Parallels Desktop 11+).
|
114
|
+
- Disable home folder sharing by default (Parallels Desktop 11+).
|
105
115
|
[[GH-257](https://github.com/Parallels/vagrant-parallels/pull/257)]
|
106
116
|
|
107
117
|
BUG FIXES:
|
108
118
|
- action/box_unregister: Fix `#recover` method for layered environments.
|
109
119
|
[[GH-261](https://github.com/Parallels/vagrant-parallels/pull/261)]
|
110
|
-
- action/network: Fix an exception when option "Connect Mac to
|
120
|
+
- action/network: Fix an exception when option "Connect Mac to
|
111
121
|
this network" is disabled. [[GH-268](https://github.com/Parallels/vagrant-parallels/pull/268)]
|
112
|
-
- commands/snapshot: Add retries for snapshot commands to avoid `prlctl`
|
113
|
-
failures. [[GH-259](https://github.com/Parallels/vagrant-parallels/pull/259)]
|
122
|
+
- commands/snapshot: Add retries for snapshot commands to avoid `prlctl`
|
123
|
+
failures. [[GH-259](https://github.com/Parallels/vagrant-parallels/pull/259)]
|
114
124
|
|
115
125
|
|
116
126
|
## 1.6.2 (March 23, 2016)
|
@@ -119,28 +129,28 @@ BUG FIXES:
|
|
119
129
|
|
120
130
|
IMPROVEMENTS:
|
121
131
|
- action/destroy: Destroy suspended VMs without resuming
|
122
|
-
|
132
|
+
|
123
133
|
## 1.6.1 (January 13, 2016)
|
124
134
|
|
125
135
|
BUG FIXES:
|
126
|
-
- action/import: Fix `regenerate_src_uuid` option behavior in parallel run
|
136
|
+
- action/import: Fix `regenerate_src_uuid` option behavior in parallel run
|
127
137
|
[[GH-241](https://github.com/Parallels/vagrant-parallels/pull/241)]
|
128
|
-
- action/box_unregister: Use temporary lock file to prevent early unregister
|
138
|
+
- action/box_unregister: Use temporary lock file to prevent early unregister
|
129
139
|
in parallel run [[GH-244](https://github.com/Parallels/vagrant-parallels/pull/244)]
|
130
140
|
- action/network: Fix detection of the next virtual network ID [[GH-245](https://github.com/Parallels/vagrant-parallels/pull/245)]
|
131
141
|
|
132
142
|
|
133
143
|
## 1.6.0 (December 24, 2015)
|
134
144
|
BREAKING CHANGES:
|
135
|
-
|
136
|
-
- The required Vagrant version is **1.8** or higher. It is caused by changes
|
145
|
+
|
146
|
+
- The required Vagrant version is **1.8** or higher. It is caused by changes
|
137
147
|
in Vagrant plugin model.
|
138
|
-
|
148
|
+
|
139
149
|
SUPPORT FOR VAGRANT FEATURES:
|
140
150
|
|
141
|
-
- `vagrant port`: This command displays the list of forwarded ports from the
|
151
|
+
- `vagrant port`: This command displays the list of forwarded ports from the
|
142
152
|
guest to the host
|
143
|
-
- `vagrant snapshot`: This command can be used to checkpoint and restore
|
153
|
+
- `vagrant snapshot`: This command can be used to checkpoint and restore
|
144
154
|
point-in-time snapshots [[GH-228](https://github.com/Parallels/vagrant-parallels/pull/228)]
|
145
155
|
|
146
156
|
IMPROVEMENTS:
|
@@ -155,10 +165,10 @@ IMPROVEMENTS:
|
|
155
165
|
|
156
166
|
BUG FIXES:
|
157
167
|
|
158
|
-
- action/forward_ports: Add parallel-safe lock to avoid collisions of
|
168
|
+
- action/forward_ports: Add parallel-safe lock to avoid collisions of
|
159
169
|
forwarded ports in multi-machine env [[GH-226](https://github.com/Parallels/vagrant-parallels/pull/226)]
|
160
170
|
|
161
171
|
## Previous Versions
|
162
172
|
|
163
173
|
Please, refer to [Releases](https://github.com/Parallels/vagrant-parallels/releases)
|
164
|
-
page on GitHub.
|
174
|
+
page on GitHub.
|
data/README.md
CHANGED
@@ -1,37 +1,37 @@
|
|
1
1
|
# Vagrant Parallels Provider
|
2
|
-
[
|
8
|
-
virtual machines on
|
9
|
-
|
10
|
-
### Requirements
|
11
|
-
- [Vagrant v1.8](http://www.vagrantup.com) or higher
|
12
|
-
(_there are known issues with Vagrant v1.9.5
|
13
|
-
[[GH-297](https://github.com/Parallels/vagrant-parallels/issues/297#issuecomment-304458691)]
|
2
|
+
[](https://badge.fury.io/rb/vagrant-parallels)
|
3
|
+
[](https://travis-ci.org/Parallels/vagrant-parallels)
|
4
|
+
[](https://codeclimate.com/github/Parallels/vagrant-parallels)
|
5
|
+
|
6
|
+
_Vagrant Parallels Provider_ is a plugin for [Vagrant](http://www.vagrantup.com),
|
7
|
+
allowing to manage [Parallels Desktop](http://www.parallels.com/products/desktop/)
|
8
|
+
virtual machines on macOS hosts.
|
9
|
+
|
10
|
+
### Requirements
|
11
|
+
- [Vagrant v1.8](http://www.vagrantup.com) or higher
|
12
|
+
(_there are known issues with Vagrant v1.9.5
|
13
|
+
[[GH-297](https://github.com/Parallels/vagrant-parallels/issues/297#issuecomment-304458691)]
|
14
14
|
and v1.9.6 [[GH-301]](https://github.com/Parallels/vagrant-parallels/issues/301)_)
|
15
|
-
- [Parallels Desktop
|
15
|
+
- [Parallels Desktop 11 for Mac](http://www.parallels.com/products/desktop/) or higher
|
16
16
|
|
17
|
-
*Note:* Only **Pro** and **Business** editions of **Parallels Desktop for Mac**
|
18
|
-
are compatible with this Vagrant provider.
|
19
|
-
Standard edition doesn't have a command line functionality and can not be used
|
17
|
+
*Note:* Only **Pro** and **Business** editions of **Parallels Desktop for Mac**
|
18
|
+
are compatible with this Vagrant provider.
|
19
|
+
Standard edition doesn't have a full command line functionality and can not be used
|
20
20
|
with Vagrant.
|
21
21
|
|
22
22
|
## Features
|
23
|
-
The Parallels provider supports all basic Vagrant features, including
|
24
|
-
|
23
|
+
The Parallels provider supports all basic Vagrant features, including Shared Folders,
|
24
|
+
Private and Public Networking, Forwarded ports and Vagrant Share.
|
25
25
|
|
26
26
|
If you're just getting started with Vagrant, it is highly recommended that you
|
27
27
|
read the official [Vagrant documentation](http://docs.vagrantup.com/v2/) first.
|
28
28
|
|
29
29
|
## Installation
|
30
|
-
|
30
|
+
Make sure that you have [Parallels Desktop for Mac](http://www.parallels.com/products/desktop/)
|
31
31
|
and [Vagrant](http://www.vagrantup.com/downloads) properly installed.
|
32
32
|
We recommend that you use the latest versions of these products.
|
33
33
|
|
34
|
-
|
34
|
+
Parallels provider is a plugin for Vagrant. Run this command to install it:
|
35
35
|
|
36
36
|
```
|
37
37
|
$ vagrant plugin install vagrant-parallels
|
@@ -48,16 +48,14 @@ We recommend you to start from these pages:
|
|
48
48
|
* [Boxes](http://parallels.github.io/vagrant-parallels/docs/boxes/index.html)
|
49
49
|
|
50
50
|
## Getting Help
|
51
|
-
Having problems while using the provider? Ask your question on the official forum:
|
52
|
-
["Parallels Provider for Vagrant" forum branch](http://forum.parallels.com/forumdisplay.php?737-Parallels-Provider-for-Vagrant)
|
53
51
|
|
54
|
-
If you
|
52
|
+
If you have an issue with the Parallels provider or discover a bug,
|
55
53
|
please report it on the [Issue Tracker](https://github.com/Parallels/vagrant-parallels/issues).
|
56
54
|
|
57
55
|
## License and Authors
|
58
56
|
|
59
57
|
* Author: Youssef Shahin <yshahin@gmail.com>
|
60
58
|
* Author: Mikhail Zholobov <legal90@gmail.com>
|
61
|
-
* Copyright 2013-
|
59
|
+
* Copyright 2013-2018, Parallels International GmbH.
|
62
60
|
|
63
|
-
Vagrant Parallels Provider is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).
|
61
|
+
Vagrant Parallels Provider is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).
|
@@ -1,5 +1,3 @@
|
|
1
|
-
require 'nokogiri'
|
2
|
-
|
3
1
|
require 'digest/md5'
|
4
2
|
|
5
3
|
module VagrantPlugins
|
@@ -21,14 +19,12 @@ module VagrantPlugins
|
|
21
19
|
@logger.info("Disabling password restrictions: #{acts.join(', ')}")
|
22
20
|
env[:machine].provider.driver.disable_password_restrictions(acts)
|
23
21
|
|
24
|
-
if env[:machine].provider_config.regen_src_uuid
|
25
|
-
&& env[:machine].provider.pd_version_satisfies?('>= 10.1.2')
|
22
|
+
if env[:machine].provider_config.regen_src_uuid
|
26
23
|
options[:regenerate_src_uuid] = true
|
27
24
|
end
|
28
25
|
|
29
26
|
# Linked clones are supported only for PD 11 and higher
|
30
|
-
if env[:machine].provider_config.linked_clone
|
31
|
-
&& env[:machine].provider.pd_version_satisfies?('>= 11')
|
27
|
+
if env[:machine].provider_config.linked_clone
|
32
28
|
# Linked clone creation should not be concurrent [GH-206]
|
33
29
|
options[:snapshot_id] = env[:clone_snapshot_id]
|
34
30
|
options[:linked] = true
|
@@ -51,12 +47,6 @@ module VagrantPlugins
|
|
51
47
|
# Flag as erroneous and return if import failed
|
52
48
|
raise Errors::VMCloneFailure if !env[:machine].id
|
53
49
|
|
54
|
-
if env[:machine].provider_config.regen_src_uuid \
|
55
|
-
&& env[:machine].provider.pd_version_satisfies?('< 10.1.2')
|
56
|
-
@logger.info('Regenerate SourceVmUuid by editing config.pvs file')
|
57
|
-
env[:machine].provider.driver.regenerate_src_uuid
|
58
|
-
end
|
59
|
-
|
60
50
|
# Remove 'Icon\r' file from VM home (bug in PD 11.0.0)
|
61
51
|
if env[:machine].provider.pd_version_satisfies?('= 11.0.0')
|
62
52
|
vm_home = env[:machine].provider.driver.read_settings.fetch('Home')
|
@@ -20,8 +20,7 @@ module VagrantPlugins
|
|
20
20
|
end
|
21
21
|
|
22
22
|
# If we're not doing a linked clone, snapshots don't matter
|
23
|
-
if !env[:machine].provider_config.linked_clone
|
24
|
-
|| env[:machine].provider.pd_version_satisfies?('< 11')
|
23
|
+
if !env[:machine].provider_config.linked_clone
|
25
24
|
return @app.call(env)
|
26
25
|
end
|
27
26
|
|
@@ -14,9 +14,6 @@ module VagrantPlugins
|
|
14
14
|
# helpers.
|
15
15
|
@env = env
|
16
16
|
|
17
|
-
settings = default_settings
|
18
|
-
|
19
|
-
@app.call(env) if settings.empty?
|
20
17
|
@env[:ui].info I18n.t('vagrant_parallels.actions.vm.sane_defaults.setting')
|
21
18
|
|
22
19
|
default_settings.each do |setting, value|
|
@@ -30,35 +27,23 @@ module VagrantPlugins
|
|
30
27
|
private
|
31
28
|
|
32
29
|
def default_settings
|
33
|
-
|
30
|
+
{
|
34
31
|
tools_autoupdate: 'no',
|
35
|
-
startup_view: 'same',
|
36
32
|
on_shutdown: 'close',
|
37
33
|
on_window_close: 'keep-running',
|
38
34
|
auto_share_camera: 'off',
|
39
35
|
smart_guard: 'off',
|
40
|
-
longer_battery_life: 'on'
|
41
|
-
}
|
42
|
-
|
43
|
-
return settings if @env[:machine].provider.pd_version_satisfies?('< 10.1.2')
|
44
|
-
settings.merge!(
|
36
|
+
longer_battery_life: 'on',
|
45
37
|
shared_cloud: 'off',
|
46
38
|
shared_profile: 'off',
|
47
39
|
smart_mount: 'off',
|
48
40
|
sh_app_guest_to_host: 'off',
|
49
41
|
sh_app_host_to_guest: 'off',
|
50
|
-
time_sync: 'off'
|
51
|
-
)
|
52
|
-
|
53
|
-
return settings if @env[:machine].provider.pd_version_satisfies?('< 11')
|
54
|
-
settings.merge!(
|
55
42
|
startup_view: 'headless',
|
56
43
|
time_sync: 'on',
|
57
44
|
disable_timezone_sync: 'on',
|
58
45
|
shf_host_defined: 'off'
|
59
|
-
|
60
|
-
|
61
|
-
settings
|
46
|
+
}
|
62
47
|
end
|
63
48
|
end
|
64
49
|
end
|
@@ -71,7 +71,7 @@ module VagrantPlugins
|
|
71
71
|
@functional_psf = true
|
72
72
|
end
|
73
73
|
|
74
|
-
@linked_clone =
|
74
|
+
@linked_clone = true if @linked_clone == UNSET_VALUE
|
75
75
|
@linked_clone_snapshot = nil if @linked_clone_snapshot == UNSET_VALUE
|
76
76
|
|
77
77
|
@name = nil if @name == UNSET_VALUE
|
@@ -724,22 +724,6 @@ module VagrantPlugins
|
|
724
724
|
vms_arr | templates_arr
|
725
725
|
end
|
726
726
|
|
727
|
-
# Regenerates 'SourceVmUuid' to avoid SMBIOS UUID collision [GH-113]
|
728
|
-
#
|
729
|
-
def regenerate_src_uuid
|
730
|
-
settings = read_settings
|
731
|
-
vm_config = File.join(settings.fetch('Home'), 'config.pvs')
|
732
|
-
|
733
|
-
# Generate and put new SourceVmUuid
|
734
|
-
xml = Nokogiri::XML(File.open(vm_config))
|
735
|
-
p = '//ParallelsVirtualMachine/Identification/SourceVmUuid'
|
736
|
-
xml.xpath(p).first.content = "{#{SecureRandom.uuid}}"
|
737
|
-
|
738
|
-
File.open(vm_config, 'w') do |f|
|
739
|
-
f.write xml.to_xml
|
740
|
-
end
|
741
|
-
end
|
742
|
-
|
743
727
|
# Registers the virtual machine
|
744
728
|
#
|
745
729
|
# @param [String] pvm_file Path to the machine image (*.pvm)
|
@@ -37,26 +37,23 @@ module VagrantPlugins
|
|
37
37
|
@@version_lock.synchronize do
|
38
38
|
@@version = read_version
|
39
39
|
end
|
40
|
-
|
40
|
+
|
41
41
|
# Instantiate the proper version driver for Parallels Desktop
|
42
42
|
@logger.debug("Finding driver for Parallels Desktop version: #{@@version}")
|
43
43
|
|
44
44
|
major_ver = @@version.split('.').first.to_i
|
45
45
|
driver_klass =
|
46
46
|
case major_ver
|
47
|
-
when 1..
|
48
|
-
when 10 then PD_10
|
47
|
+
when 1..10 then raise Errors::ParallelsUnsupportedVersion
|
49
48
|
when 11 then PD_11
|
50
49
|
else PD_12
|
51
50
|
end
|
52
51
|
|
53
52
|
# Starting since PD 11 only Pro and Business editions have CLI
|
54
53
|
# functionality and can be used with Vagrant.
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
raise Errors::ParallelsUnsupportedEdition
|
59
|
-
end
|
54
|
+
edition = read_edition
|
55
|
+
if !edition || !%w(any pro business).include?(edition)
|
56
|
+
raise Errors::ParallelsUnsupportedEdition
|
60
57
|
end
|
61
58
|
|
62
59
|
@logger.info("Using Parallels driver: #{driver_klass}")
|
@@ -143,6 +140,7 @@ module VagrantPlugins
|
|
143
140
|
# * prlctl version 8.0.12345.123456
|
144
141
|
# * prlctl version 9.0.12345.123456
|
145
142
|
# * prlctl version 10.0.0 (12345) rev 123456
|
143
|
+
# * prlctl version 14.0.1 (45154)
|
146
144
|
#
|
147
145
|
# But we need exactly the first 3 numbers: "x.x.x"
|
148
146
|
output = execute(@prlctl_path, '--version')
|
@@ -2,13 +2,13 @@ require 'log4r'
|
|
2
2
|
|
3
3
|
require 'vagrant/util/platform'
|
4
4
|
|
5
|
-
require_relative '
|
5
|
+
require_relative 'base'
|
6
6
|
|
7
7
|
module VagrantPlugins
|
8
8
|
module Parallels
|
9
9
|
module Driver
|
10
10
|
# Driver for Parallels Desktop 11.
|
11
|
-
class PD_11 <
|
11
|
+
class PD_11 < Base
|
12
12
|
def initialize(uuid)
|
13
13
|
super(uuid)
|
14
14
|
|
@@ -143,7 +143,6 @@ module VagrantPlugins
|
|
143
143
|
# our drivers only when they are needed.
|
144
144
|
module Driver
|
145
145
|
autoload :Meta, File.expand_path('../driver/meta', __FILE__)
|
146
|
-
autoload :PD_10, File.expand_path('../driver/pd_10', __FILE__)
|
147
146
|
autoload :PD_11, File.expand_path('../driver/pd_11', __FILE__)
|
148
147
|
autoload :PD_12, File.expand_path('../driver/pd_12', __FILE__)
|
149
148
|
end
|
data/locales/en.yml
CHANGED
@@ -64,7 +64,7 @@ en:
|
|
64
64
|
Network settings: %{options}
|
65
65
|
Error: %{error}
|
66
66
|
mac_os_x_required: |-
|
67
|
-
Parallels provider works only on
|
67
|
+
Parallels provider works only on macOS (Mac OS X) systems.
|
68
68
|
parallels_install_incomplete: |-
|
69
69
|
Parallels Desktop is complaining that the installation is incomplete.
|
70
70
|
Try to reinstall Parallels Desktop or contact Parallels support.
|
@@ -105,7 +105,7 @@ en:
|
|
105
105
|
parallels_unsupported_version: |-
|
106
106
|
Vagrant has detected that you have a version of Parallels Desktop for Mac
|
107
107
|
installed that is not supported. Vagrant Parallels provider is compatible
|
108
|
-
only with Parallels Desktop
|
108
|
+
only with Parallels Desktop 11 or later.
|
109
109
|
Please upgrade your installation: http://parallels.com/desktop
|
110
110
|
|
111
111
|
Note: Starting since Parallels Desktop 11 for Mac, Vagrant Parallels
|
@@ -205,8 +205,8 @@ en:
|
|
205
205
|
check_shared_interface:
|
206
206
|
connecting: Connecting host to Shared network...
|
207
207
|
clone:
|
208
|
-
full:
|
209
|
-
linked: Creating new virtual machine as a linked clone...
|
208
|
+
full: Creating new virtual machine as a full clone of the box image...
|
209
|
+
linked: Creating new virtual machine as a linked clone of the box image...
|
210
210
|
handle_guest_tools:
|
211
211
|
cant_install: |-
|
212
212
|
Vagrant doesn't support installing Parallels Tools for the guest OS
|
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:
|
4
|
+
version: 2.0.0
|
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: 2018-11-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
@@ -114,7 +114,6 @@ files:
|
|
114
114
|
- lib/vagrant-parallels/config.rb
|
115
115
|
- lib/vagrant-parallels/driver/base.rb
|
116
116
|
- lib/vagrant-parallels/driver/meta.rb
|
117
|
-
- lib/vagrant-parallels/driver/pd_10.rb
|
118
117
|
- lib/vagrant-parallels/driver/pd_11.rb
|
119
118
|
- lib/vagrant-parallels/driver/pd_12.rb
|
120
119
|
- lib/vagrant-parallels/errors.rb
|
@@ -150,7 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
150
149
|
version: 1.3.6
|
151
150
|
requirements: []
|
152
151
|
rubyforge_project: vagrant-parallels
|
153
|
-
rubygems_version: 2.
|
152
|
+
rubygems_version: 2.6.13
|
154
153
|
signing_key:
|
155
154
|
specification_version: 4
|
156
155
|
summary: Parallels provider for Vagrant.
|
@@ -1,20 +0,0 @@
|
|
1
|
-
require 'log4r'
|
2
|
-
|
3
|
-
require 'vagrant/util/platform'
|
4
|
-
|
5
|
-
require_relative 'base'
|
6
|
-
|
7
|
-
module VagrantPlugins
|
8
|
-
module Parallels
|
9
|
-
module Driver
|
10
|
-
# Driver for Parallels Desktop 10.
|
11
|
-
class PD_10 < Base
|
12
|
-
def initialize(uuid)
|
13
|
-
super(uuid)
|
14
|
-
|
15
|
-
@logger = Log4r::Logger.new('vagrant_parallels::driver::pd_10')
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|