diff --git a/app/app.go b/app/app.go index ae9244c..f2d729a 100644 --- a/app/app.go +++ b/app/app.go @@ -161,11 +161,15 @@ func (a *App) Run() error { } a.Watcher.Add(p.Path) } - if err := os.MkdirAll(a.Config.Server.UploadPath, 0o755); err != nil { - return fmt.Errorf( - "error creating upload path %s: %w", - a.Config.Server.UploadPath, err, - ) + if _, err := os.Stat(a.Config.Server.UploadPath) ; err != nil && os.IsNotExist(err) { + log.Warn( + fmt.Sprintf("app: upload path '%s' does not exist. Creating it now.", + a.Config.Server.UploadPath)) + if err := os.MkdirAll(a.Config.Server.UploadPath, 0o755); err != nil { + return fmt.Errorf( + "error creating upload path %s: %w", + a.Config.Server.UploadPath, err) + } } buildFeed(a) go startWatcher(a) diff --git a/media/library.go b/media/library.go index 0657847..df916a5 100644 --- a/media/library.go +++ b/media/library.go @@ -4,7 +4,7 @@ import ( "errors" "fmt" "io/ioutil" - "log" + log "github.com/sirupsen/logrus" "os" "path" "path/filepath" @@ -41,8 +41,11 @@ func (lib *Library) AddPath(p *Path) error { return errors.New(fmt.Sprintf("media: duplicate library prefix '%s'", p.Prefix)) } } - if err := os.MkdirAll(p.Path, 0755); err != nil { - return fmt.Errorf("error creating library path %s: %w", p.Path, err) + if _, err := os.Stat(p.Path) ; err != nil && os.IsNotExist(err) { + log.Warn(fmt.Sprintf("media: library path '%s' does not exist. Creating it now.", p.Path)) + if err := os.MkdirAll(p.Path, 0o755); err != nil { + return fmt.Errorf("error creating library path %s: %w", p.Path, err) + } } lib.Paths[p.Path] = p return nil @@ -84,7 +87,7 @@ func (lib *Library) Add(fp string) error { return err } lib.Videos[v.ID] = v - log.Println("Added:", v.Path) + log.Debug("Added:", v.Path) return nil } @@ -111,7 +114,7 @@ func (lib *Library) Remove(fp string) { v, ok := lib.Videos[id] if ok { delete(lib.Videos, id) - log.Println("Removed:", v.Path) + log.Debug("Removed:", v.Path) } } diff --git a/utils/utils.go b/utils/utils.go index d58c6c2..64092cd 100644 --- a/utils/utils.go +++ b/utils/utils.go @@ -32,7 +32,7 @@ func Download(url, filename string) error { return err } - if err := ioutil.WriteFile(filename, data, 0644); err != nil { + if err := ioutil.WriteFile(filename, data, 0o644); err != nil { return err }