From b5c9806dd0ef9397f2b0ccf70d381f44d2cba492 Mon Sep 17 00:00:00 2001 From: Niko Storni Date: Mon, 24 Jun 2019 20:43:50 -0400 Subject: [PATCH] improve space management --- manager/ytsync.go | 11 +++++++++++ sources/youtubeVideo.go | 1 + 2 files changed, 12 insertions(+) diff --git a/manager/ytsync.go b/manager/ytsync.go index 66fa5c8..29757d4 100644 --- a/manager/ytsync.go +++ b/manager/ytsync.go @@ -295,6 +295,7 @@ func (s *Sync) FullCycle() (e error) { return errors.Wrap(err, 0) } + defer deleteSyncFolder(s.videoDirectory) log.Printf("Starting daemon") err = startDaemonViaSystemd() if err != nil { @@ -323,6 +324,16 @@ func (s *Sync) FullCycle() (e error) { return nil } +func deleteSyncFolder(videoDirectory string) { + if !strings.Contains(videoDirectory, "/tmp/ytsync") { + _ = util.SendToSlack(errors.Err("Trying to delete an unexpected directory: %s", videoDirectory).Error()) + } + err := os.RemoveAll(videoDirectory) + if err != nil { + _ = util.SendToSlack(err.Error()) + } +} + func (s *Sync) setChannelTerminationStatus(e *error) { if *e != nil { //conditions for which a channel shouldn't be marked as failed diff --git a/sources/youtubeVideo.go b/sources/youtubeVideo.go index c0a7f52..b101e4c 100644 --- a/sources/youtubeVideo.go +++ b/sources/youtubeVideo.go @@ -187,6 +187,7 @@ func (v *YoutubeVideo) fallbackDownload() error { log.Debugln(string(output)) if err != nil { log.Printf("Command finished with error: %v", errors.Err(string(output))) + _ = v.delete() return errors.Err(err) } fi, err := os.Stat(v.getFullPath())