provisioner/puppet-masterless: only base if manifest is a file [GH-1933]

This commit is contained in:
Mitchell Hashimoto 2015-06-15 14:44:54 -07:00
parent 452421b8bc
commit 742e556836
1 changed files with 7 additions and 1 deletions

View File

@ -259,7 +259,13 @@ func (p *Provisioner) uploadManifests(ui packer.Ui, comm packer.Communicator) (s
}
defer f.Close()
manifestFilename := filepath.Base(p.config.ManifestFile)
manifestFilename := p.config.ManifestFile
if fi, err := os.Stat(p.config.ManifestFile); err != nil {
return "", fmt.Errorf("Error inspecting manifest file: %s", err)
} else if !fi.IsDir() {
manifestFilename = filepath.Base(manifestFilename)
}
remoteManifestFile := fmt.Sprintf("%s/%s", remoteManifestsPath, manifestFilename)
if err := comm.Upload(remoteManifestFile, f, nil); err != nil {
return "", err