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"
"log"
"os"
"path/filepath"
"runtime"
)
@ -34,13 +35,17 @@ func main() {
log.Printf("Packer config: %+v", config)
defer plugin.CleanupClients()
cacheDir := os.Getenv("PACKER_CACHE_DIR")
if cacheDir == "" {
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 {
fmt.Fprintf(os.Stderr, "Error preparing cache directory: \n\n%s\n", err)
os.Exit(1)
@ -49,6 +54,8 @@ func main() {
log.Printf("Setting cache directory: %s", cacheDir)
cache := &packer.FileCache{CacheDir: cacheDir}
defer plugin.CleanupClients()
envConfig := packer.DefaultEnvironmentConfig()
envConfig.Cache = cache
envConfig.Commands = config.CommandNames()