Files
factoryman/backup.go
Raum0x2A aef97fe613 Added path checks and updated config
- Cleaned up func main()
- Separated config into two sections server and factoryman
- Updated backup.go to reflect changes to config file
- Updated config.go to reflect changes to config.yml as well as added a check to paths in config.yml
- Updated launch.go to reflect changes to config
move cli handler from main to cli.go
2026-04-29 11:39:55 -06:00

37 lines
972 B
Go

package main
import (
"fmt"
"os"
"os/exec"
"time"
)
func backUp(cmd string, c GoConfig) {
switch cmd {
case "full":
fmt.Println("Starting full server backup")
t := time.Now()
timeStamp := t.Format(time.RFC3339)
fullBackupName := fmt.Sprintf("%s/ServerBackup.%s.tgz", c.Factoryman.BackupDir, timeStamp)
fullBackup := exec.Command("tar", "-czvf", fullBackupName, c.Server.ServDir)
fullBackup.Stdout = os.Stdout
err := fullBackup.Run()
if err != nil {
fmt.Printf("Backup Failed: %s\n", err)
}
case "saves":
fmt.Println("Backing up saves")
t := time.Now()
timeStamp := t.Format(time.RFC3339)
savesBackupName := fmt.Sprintf("%s/SaveBackup.%s.tgz", c.Factoryman.BackupDir, timeStamp)
saveDir := fmt.Sprintf("%s/saves", c.Server.ServDir)
savesBackup := exec.Command("tar", "-czvf", savesBackupName, saveDir)
savesBackup.Stdout = os.Stdout
err := savesBackup.Run()
if err != nil {
fmt.Printf("Backup Failed: %s\n", err)
}
}
}