Merge pull request #162 from desimone/patch-3

Update communicator.go
This commit is contained in:
Jack Pearkes 2014-08-07 15:19:08 -04:00
commit 1244bff399
1 changed files with 6 additions and 6 deletions

View File

@ -98,7 +98,7 @@ type Config struct {
NoPty bool NoPty bool
} }
// Creates a new packer.Communicator implementation over SSH. This takes // New creates a new packer.Communicator implementation over SSH. This takes
// an already existing TCP connection and SSH configuration. // an already existing TCP connection and SSH configuration.
func New(address string, config *Config) (result *SSHCommunicator, err error) { func New(address string, config *Config) (result *SSHCommunicator, err error) {
// Establish an initial connection and connect // Establish an initial connection and connect
@ -182,19 +182,19 @@ func (c *SSHCommunicator) Start(cmd *RemoteCmd) (err error) {
func (c *SSHCommunicator) Upload(path string, input io.Reader) error { func (c *SSHCommunicator) Upload(path string, input io.Reader) error {
// The target directory and file for talking the SCP protocol // The target directory and file for talking the SCP protocol
target_dir := filepath.Dir(path) targetDir := filepath.Dir(path)
target_file := filepath.Base(path) targetFile := filepath.Base(path)
// On windows, filepath.Dir uses backslash separators (ie. "\tmp"). // On windows, filepath.Dir uses backslash separators (ie. "\tmp").
// This does not work when the target host is unix. Switch to forward slash // This does not work when the target host is unix. Switch to forward slash
// which works for unix and windows // which works for unix and windows
target_dir = filepath.ToSlash(target_dir) targetDir = filepath.ToSlash(targetDir)
scpFunc := func(w io.Writer, stdoutR *bufio.Reader) error { scpFunc := func(w io.Writer, stdoutR *bufio.Reader) error {
return scpUploadFile(target_file, input, w, stdoutR) return scpUploadFile(targetFile, input, w, stdoutR)
} }
return c.scpSession("scp -vt "+target_dir, scpFunc) return c.scpSession("scp -vt "+targetDir, scpFunc)
} }
func (c *SSHCommunicator) UploadDir(dst string, src string, excl []string) error { func (c *SSHCommunicator) UploadDir(dst string, src string, excl []string) error {