vagrant-vmware-esxi 2.0.5 → 2.0.6
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/Gemfile +0 -5
- data/README.md +6 -0
- data/lib/vagrant-vmware-esxi/action/createvm.rb +6 -1
- data/lib/vagrant-vmware-esxi/action/esxi_password.rb +21 -7
- data/lib/vagrant-vmware-esxi/action/read_state.rb +1 -1
- data/lib/vagrant-vmware-esxi/config.rb +5 -3
- data/lib/vagrant-vmware-esxi/version.rb +1 -1
- data/vagrant-vmware-esxi.gemspec +4 -7
- metadata +1 -49
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b492ed5cff029e4fd8de183ed3fe60bb2cf7fa2
|
4
|
+
data.tar.gz: 398277bd2f8d457495d20364d02f8af7920e15d3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb9b631795bd52722a72fe6d2da9409a461680e90c4b2192867f4f0c46438b64b3c13885e0985e78442f1ad834ec14972fac0510d154c39458ae8882cac27827
|
7
|
+
data.tar.gz: 20c7f5420df573bd8b954fe4b31845129066c88b59b5ae4495c11d3f2f841e555f10df8c6ec638eb82555176101c28048f7c3fb3d5846545629166fdc6779664
|
data/Gemfile
CHANGED
@@ -1,14 +1,9 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
# Specify your gem's dependencies in vagrant-exsi.gemspec
|
4
|
-
#gemspec
|
5
|
-
|
6
3
|
group :development do
|
7
4
|
gem 'vagrant', git: 'https://github.com/hashicorp/vagrant.git'
|
8
|
-
#gem 'vagrant-vmware-esxi', path: '.'
|
9
5
|
end
|
10
6
|
|
11
7
|
group :plugins do
|
12
|
-
#gem 'vagrant-vmware-esxi', path: '.'
|
13
8
|
gemspec
|
14
9
|
end
|
data/README.md
CHANGED
@@ -258,10 +258,16 @@ Known issues with vmware_esxi
|
|
258
258
|
* Cleanup doesn't always destroy a VM that has been partially built. Use the local_allow_overwrite = 'True' option if you need to force a rebuild, or you can delete the vm using the VSphere client.
|
259
259
|
* ovftool installer for windows doesn't put ovftool.exe in your path. You can manually set your path, or install ovftool in the \HashiCorp\Vagrant\bin directory.
|
260
260
|
* In general I find the vagrant NFS synced folders a little 'flaky'...
|
261
|
+
* V2.0.1 - 2.0.5 is not compatible with Windows (to support ed25519 ssh keys, net-ssh requires libsodium but it's not compatible with Windows). Update to a newer version.
|
261
262
|
|
262
263
|
|
263
264
|
Version History
|
264
265
|
---------------
|
266
|
+
* 2.0.6 Fix Windows compatibility by not supporting ed25519 ssh keys. When net-ssh 5.x is released AND vagrant allows it's use, I will support ed25519 again.
|
267
|
+
Fix, encode '/' in esxi passwords.
|
268
|
+
Fix, Get local IP address for NFS syncd folders. Filter out localhost 127.0.0.0/8.
|
269
|
+
Work-around 'prompt:' issues with unsupported consoles. Cygwin & gitbash, for example.
|
270
|
+
|
265
271
|
* 2.0.5 Performance enhancement. Guest IP caching
|
266
272
|
Performance enhancement. Optimize esxi connectivity checks.
|
267
273
|
Performance enhancement & bugfix. Get local IP address for NFS syncd folders.
|
@@ -473,6 +473,7 @@ module VagrantPlugins
|
|
473
473
|
" Please download and "\
|
474
474
|
' install from http://www.vmware.com.'
|
475
475
|
end
|
476
|
+
|
476
477
|
ovf_cmd = "ovftool --noSSLVerify #{overwrite_opts} "\
|
477
478
|
"#{netOpts} -dm=#{guest_disk_type} #{local_laxoption} "\
|
478
479
|
"-ds=\"#{@guestvm_dsname}\" --name=\"#{desired_guest_name}\" "\
|
@@ -487,7 +488,11 @@ module VagrantPlugins
|
|
487
488
|
@logger.info("vagrant-vmware-esxi, createvm: ovf_cmd #{ovf_cmd}")
|
488
489
|
puts "ovftool command: #{ovf_cmd}"
|
489
490
|
elsif config.debug =~ %r{true}i
|
490
|
-
|
491
|
+
if $encoded_esxi_password == ''
|
492
|
+
ovf_cmd_nopw = ovf_cmd
|
493
|
+
else
|
494
|
+
ovf_cmd_nopw = ovf_cmd.gsub(/#{$encoded_esxi_password}/, '******')
|
495
|
+
end
|
491
496
|
puts "ovftool command: #{ovf_cmd_nopw}"
|
492
497
|
end
|
493
498
|
unless system "#{ovf_cmd}"
|
@@ -33,12 +33,25 @@ module VagrantPlugins
|
|
33
33
|
# Prompt for password
|
34
34
|
#
|
35
35
|
begin
|
36
|
-
print "#{config.esxi_hostname} password:"
|
36
|
+
print "#{config.esxi_username}@#{config.esxi_hostname} password:"
|
37
37
|
$esxi_password = STDIN.noecho(&:gets).chomp
|
38
38
|
puts ''
|
39
39
|
rescue
|
40
|
-
|
41
|
-
|
40
|
+
begin
|
41
|
+
# There is something funky with STDIN... (unsupported console)
|
42
|
+
puts ''
|
43
|
+
puts ''
|
44
|
+
puts 'Error! Your console doesn\'t support hiding input. We\'ll ask for'
|
45
|
+
puts 'input again below, but we WILL NOT be able to hide input. If this'
|
46
|
+
puts 'is a problem for you, ctrl-C / [ENTER] to exit and fix your stdin.'
|
47
|
+
puts ''
|
48
|
+
print "#{config.esxi_username}@#{config.esxi_hostname} password:"
|
49
|
+
$esxi_password = $stdin.readline().chomp
|
50
|
+
puts ''
|
51
|
+
rescue
|
52
|
+
raise Errors::ESXiError,
|
53
|
+
message: 'Prompt for password error???'
|
54
|
+
end
|
42
55
|
end
|
43
56
|
elsif config.esxi_password =~ %r{^env:}i
|
44
57
|
#
|
@@ -84,9 +97,7 @@ module VagrantPlugins
|
|
84
97
|
#
|
85
98
|
$esxi_password = ''
|
86
99
|
esxi_password_key = config.esxi_password.gsub(/key:/i, '').chomp
|
87
|
-
|
88
|
-
config.local_private_keys = config.system_private_keys_path
|
89
|
-
else
|
100
|
+
unless esxi_password_key.empty?
|
90
101
|
config.local_private_keys = esxi_password_key
|
91
102
|
end
|
92
103
|
else
|
@@ -106,7 +117,8 @@ module VagrantPlugins
|
|
106
117
|
'/', '%2f').gsub('\\','%5c').gsub(\
|
107
118
|
'"', '%22').gsub('\'','%27').gsub(\
|
108
119
|
'*', '%2a').gsub('?', '%3f').gsub(\
|
109
|
-
'$', '%24').gsub(' ', '%20')
|
120
|
+
'$', '%24').gsub(' ', '%20').gsub(\
|
121
|
+
'/', '%2f')
|
110
122
|
|
111
123
|
@logger.info('vagrant-vmware-esxi, connect_esxi: local_private_keys: '\
|
112
124
|
"#{config.local_private_keys}")
|
@@ -115,7 +127,9 @@ module VagrantPlugins
|
|
115
127
|
# Test ESXi host connectivity
|
116
128
|
#
|
117
129
|
begin
|
130
|
+
puts "RUBY_PLATFORM: #{RUBY_PLATFORM}" if config.debug =~ %r{true}i
|
118
131
|
puts "Testing esxi connectivity" if config.debug =~ %r{ip}i
|
132
|
+
puts "esxi_ssh_keys: #{config.local_private_keys}" if config.debug =~ %r{ip}i
|
119
133
|
Net::SSH.start(config.esxi_hostname, config.esxi_username,
|
120
134
|
password: $esxi_password,
|
121
135
|
port: config.esxi_hostport,
|
@@ -33,7 +33,7 @@ module VagrantPlugins
|
|
33
33
|
puts "Get local IP address for NFS. (alt)" if env[:machine].provider_config.debug =~ %r{ip}i
|
34
34
|
# Alt method. Get list of ip_addresses on system and use the first.
|
35
35
|
Socket.ip_address_list.each do |ip|
|
36
|
-
if (ip.ip_address =~ /^(\d{1,3}).(\d{1,3}).(\d{1,3}).(\d{1,3})$/) && (ip.ip_address !~ /^127
|
36
|
+
if (ip.ip_address =~ /^(\d{1,3}).(\d{1,3}).(\d{1,3}).(\d{1,3})$/) && (ip.ip_address !~ /^127./)
|
37
37
|
env[:nfs_host_ip] = ip.ip_address
|
38
38
|
break
|
39
39
|
end
|
@@ -87,12 +87,14 @@ module VagrantPlugins
|
|
87
87
|
@debug = 'False'
|
88
88
|
@saved_ipaddress = nil
|
89
89
|
@saved_ipaddress_count = 0
|
90
|
-
@
|
90
|
+
@system_private_keys = [
|
91
91
|
'~/.ssh/id_rsa',
|
92
92
|
'~/.ssh/id_ecdsa',
|
93
|
-
'~/.ssh/id_ed25519',
|
94
93
|
'~/.ssh/id_dsa'
|
95
94
|
]
|
95
|
+
#'~/.ssh/id_ed25519',
|
96
|
+
# Removed support for ed25519 because libsodium is not compatible with windows.
|
97
|
+
# Should be added back when net-ssh 5.0 is out of beta.
|
96
98
|
@supported_guest_virtualhw_versions = [
|
97
99
|
4,7,8,9,10,11,12,13
|
98
100
|
]
|
@@ -367,7 +369,7 @@ module VagrantPlugins
|
|
367
369
|
|
368
370
|
@esxi_virtual_network = ['--NotSet--'] if @esxi_virtual_network.nil?
|
369
371
|
|
370
|
-
@local_private_keys = @
|
372
|
+
@local_private_keys = @system_private_keys if @local_private_keys == nil
|
371
373
|
|
372
374
|
# @guest_virtualhw_version = @guest_virtualhw_version.to_i unless @guest_virtualhw_version.nil?
|
373
375
|
|
data/vagrant-vmware-esxi.gemspec
CHANGED
@@ -20,13 +20,10 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.add_runtime_dependency 'log4r', '~> 1.1'
|
21
21
|
s.add_runtime_dependency "iniparse", '> 1.0'
|
22
22
|
s.add_runtime_dependency "nokogiri", '> 1.5'
|
23
|
-
#s.add_runtime_dependency "net-ssh", '> 4.0'
|
24
|
-
s.add_runtime_dependency 'rbnacl', '>= 3.2', '< 4.0'
|
25
|
-
s.add_runtime_dependency 'rbnacl-libsodium'
|
26
|
-
s.add_runtime_dependency 'bcrypt_pbkdf', '>= 1.0'
|
27
23
|
|
28
|
-
#
|
29
|
-
#s.
|
24
|
+
# Needed only to support ed25519 ssh keys with net-ssh 4.x. Won't need this for net-ssh 5.x.
|
25
|
+
#s.add_runtime_dependency 'rbnacl', '>= 4.0', '< 5.0'
|
26
|
+
#s.add_runtime_dependency 'rbnacl-libsodium', '= 1.0.16.1'
|
27
|
+
#s.add_runtime_dependency 'bcrypt_pbkdf', '>= 1.0'
|
30
28
|
|
31
29
|
end
|
32
|
-
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-vmware-esxi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Senkerik
|
@@ -66,54 +66,6 @@ dependencies:
|
|
66
66
|
- - ">"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1.5'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rbnacl
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '3.2'
|
76
|
-
- - "<"
|
77
|
-
- !ruby/object:Gem::Version
|
78
|
-
version: '4.0'
|
79
|
-
type: :runtime
|
80
|
-
prerelease: false
|
81
|
-
version_requirements: !ruby/object:Gem::Requirement
|
82
|
-
requirements:
|
83
|
-
- - ">="
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '3.2'
|
86
|
-
- - "<"
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: '4.0'
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: rbnacl-libsodium
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - ">="
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '0'
|
96
|
-
type: :runtime
|
97
|
-
prerelease: false
|
98
|
-
version_requirements: !ruby/object:Gem::Requirement
|
99
|
-
requirements:
|
100
|
-
- - ">="
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: '0'
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: bcrypt_pbkdf
|
105
|
-
requirement: !ruby/object:Gem::Requirement
|
106
|
-
requirements:
|
107
|
-
- - ">="
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '1.0'
|
110
|
-
type: :runtime
|
111
|
-
prerelease: false
|
112
|
-
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
requirements:
|
114
|
-
- - ">="
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
version: '1.0'
|
117
69
|
description: A Vagrant plugin that adds a VMware ESXi provider support
|
118
70
|
email: josenk@jintegrate.co
|
119
71
|
executables: []
|