diff --git a/main.go b/main.go index c8542c7..2857a50 100644 --- a/main.go +++ b/main.go @@ -2,17 +2,54 @@ package main import ( "flag" + "fmt" "log" + "os" _ "github.com/codingsince1985/checksum" ) func main() { var source_dir = flag.String("source_dir", "./", "Path to image folder (/srv/fwuploads-tmp/)") + var target_dir = flag.String("target_dir", "./", "Path to image folder in public (/srv/fwuploads/troisdorf)") + var branch = flag.String("branch", "", "Branch to work with") flag.Parse() - - err := generate_manifest(*source_dir) + sdir := *source_dir + tdir := *target_dir + br := *branch + var source_dir_branch string = sdir + br + "/" + var target_dir_branch string = tdir + br + "/" + err := generate_manifest(source_dir_branch) if err != nil { log.Println("Error generating Manifest file: ", err) } + release_branch(*branch, source_dir_branch, target_dir_branch) +} + +func release_branch(branch string, source_dir string, target_dir string) { + checkOldFolder, _ := os.ReadDir(source_dir) + checkNewFolder, _ := os.ReadDir(target_dir) + var newImages bool = false + if len(checkOldFolder) > 0 { + newImages = true + } + + if newImages { + // delete old firmware files in public folder + for _, file := range checkNewFolder { + err := os.Remove(target_dir + file.Name()) + if err != nil { + log.Println("error deleting file: ", err) + } else { + log.Println("removed file: ", file.Name()) + } + } + + //move new files to folder + for _, file := range checkOldFolder { + os.Rename(source_dir+file.Name(), target_dir+file.Name()) + fmt.Println("moved file: ", file.Name()) + } + + } }