2025-03-20 22:14:45 +01:00

38 lines
844 B
Go

package main
import (
"backea/internal/backup"
"context"
"flag"
"log"
"strings"
"github.com/joho/godotenv"
)
func main() {
configPath := flag.String("config", "config.yml", "Path to config file")
serviceFlag := flag.String("service", "", "Service to backup (format: group or group.index)")
flag.Parse()
if err := godotenv.Load(); err != nil {
log.Printf("Warning: Error loading .env file: %v", err)
}
ctx := context.Background()
// Parse the service flag to extract group and index if provided
var serviceName, serviceIndex string
if *serviceFlag != "" {
parts := strings.SplitN(*serviceFlag, "-", 2)
serviceName = parts[0]
if len(parts) > 1 {
serviceIndex = parts[1]
}
}
if err := backup.PerformBackups(ctx, *configPath, serviceName, serviceIndex); err != nil {
log.Fatalf("Backup failed: %v", err)
}
}