Files
factoryman/backup.go
Raum0x2A e051d2d6f6 Changed GoConfig to UsrConfig
Changed GoConfig struct to UsrConfig
2026-05-04 11:50:08 -06:00

37 lines
973 B
Go

package main
import (
"fmt"
"os"
"os/exec"
"time"
)
func backUp(cmd string, c UsrConfig) {
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)
}
}
}