vagrant-vmware-esxi 2.0.5 → 2.0.6
Sign up to get free protection for your applications and to get access to all the features.
- 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: []
|