// Command ratatoskr — оркестратор конвейера Ratatoskr (единый бинарь). // // Запуск: ratatoskr [-config config.yaml] // config.yaml ищется в CWD, по умолчанию — env/дефолты. package main import ( "context" "flag" "fmt" "log" "os" "github.com/kamelion/ratatoskr-go/internal/app" ) func main() { cfg := flag.String("config", "", "путь к config.yaml (по умолчанию — CWD/config.yaml)") version := flag.Bool("version", false, "показать версию и выйти") flag.Parse() if *version { fmt.Println("ratatoskr-go dev (переезд с Ratatoskr Python)") return } a, err := app.New(*cfg) if err != nil { log.Fatalf("app init: %v", err) } defer func() { if a.Store != nil { a.Store.Close() } }() log.Print("ratatoskr: запущен") if err := a.Run(context.Background()); err != nil { log.Fatalf("app run: %v", err) } log.Print("ratatoskr: остановлен") os.Exit(0) }