Make sure the cache dir is absolute

This commit is contained in:
Mitchell Hashimoto 2013-06-20 12:37:17 -07:00
parent 6b04876e35
commit a2f7950f63
1 changed files with 9 additions and 2 deletions

View File

@ -9,6 +9,7 @@ import (
"io/ioutil" "io/ioutil"
"log" "log"
"os" "os"
"path/filepath"
"runtime" "runtime"
) )
@ -34,13 +35,17 @@ func main() {
log.Printf("Packer config: %+v", config) log.Printf("Packer config: %+v", config)
defer plugin.CleanupClients()
cacheDir := os.Getenv("PACKER_CACHE_DIR") cacheDir := os.Getenv("PACKER_CACHE_DIR")
if cacheDir == "" { if cacheDir == "" {
cacheDir = "packer_cache" cacheDir = "packer_cache"
} }
cacheDir, err = filepath.Abs(cacheDir)
if err != nil {
fmt.Fprintf(os.Stderr, "Error preparing cache directory: \n\n%s\n", err)
os.Exit(1)
}
if err := os.MkdirAll(cacheDir, 0755); err != nil { if err := os.MkdirAll(cacheDir, 0755); err != nil {
fmt.Fprintf(os.Stderr, "Error preparing cache directory: \n\n%s\n", err) fmt.Fprintf(os.Stderr, "Error preparing cache directory: \n\n%s\n", err)
os.Exit(1) os.Exit(1)
@ -49,6 +54,8 @@ func main() {
log.Printf("Setting cache directory: %s", cacheDir) log.Printf("Setting cache directory: %s", cacheDir)
cache := &packer.FileCache{CacheDir: cacheDir} cache := &packer.FileCache{CacheDir: cacheDir}
defer plugin.CleanupClients()
envConfig := packer.DefaultEnvironmentConfig() envConfig := packer.DefaultEnvironmentConfig()
envConfig.Cache = cache envConfig.Cache = cache
envConfig.Commands = config.CommandNames() envConfig.Commands = config.CommandNames()