package helper import ( "os" "strings" ) // CreateDirectory creates direcory with all missing parents and panic if error func CreateDirectory(dir string) { Log.Debugf("trying to create output directory: %s", dir) if dirH, err := os.Stat(dir); os.IsNotExist(err) { err := os.MkdirAll(dir, 0755) if err != nil { Log.Panicf("could not create output directory '%s': %s", dir, err) } Log.Noticef("created output directory: %s", dir) } else if dirH != nil { if dirH.IsDir() { Log.Noticef("output directory '%s' already exists", dir) } else { Log.Panicf("output directory '%s' is no directory", dir) } } else { Log.Panicf("unknown error for output directory '%s': %s", dir, err) } } // BackToRoot builds ../../ string func BackToRoot(curNavPath string) string { tmpPath := "" if curNavPath != "" { for i := strings.Count(curNavPath, "/") + 1; i > 0; i-- { tmpPath += "../" } } return tmpPath }