Fix Windows shell provisioning
Resolves [GH-1036] [GH-1164] [GH-1181] Ported fixes from patches to 1-0-stable
This commit is contained in:
parent
63a40c598d
commit
cced762645
|
@ -94,7 +94,8 @@ module VagrantPlugins
|
|||
@logger.debug("Uploading: #{from} to #{to}")
|
||||
|
||||
scp_connect do |scp|
|
||||
scp.upload!(from, to)
|
||||
# Open file read only to fix issue [GH-1036]
|
||||
scp.upload!(File.open(from, "r"), to)
|
||||
end
|
||||
rescue RuntimeError => e
|
||||
# Net::SCP raises a runtime error for this so the only way we have
|
||||
|
|
|
@ -60,6 +60,10 @@ module VagrantPlugins
|
|||
# Otherwise we have an inline script, we need to Tempfile it,
|
||||
# and handle it specially...
|
||||
file = Tempfile.new('vagrant-shell')
|
||||
# Unless you set binmode, on a Windows host the shell script will
|
||||
# have CRLF line endings instead of LF line endings, causing havoc
|
||||
# when the guest executes it. This fixes [GH-1181].
|
||||
file.binmode
|
||||
begin
|
||||
file.write(config.inline)
|
||||
file.fsync
|
||||
|
|
Loading…
Reference in New Issue