This commit is contained in:
2025-04-13 19:12:02 +03:00
parent bf47f7c0b7
commit 587abf7aad
9 changed files with 275 additions and 169 deletions

44
fix.go
View File

@ -27,10 +27,8 @@ import (
"github.com/leonelquinteros/gotext"
"github.com/urfave/cli/v2"
"gitea.plemya-x.ru/Plemya-x/ALR/internal/config"
database "gitea.plemya-x.ru/Plemya-x/ALR/internal/db"
appbuilder "gitea.plemya-x.ru/Plemya-x/ALR/internal/cliutils/app_builder"
"gitea.plemya-x.ru/Plemya-x/ALR/internal/utils"
"gitea.plemya-x.ru/Plemya-x/ALR/pkg/repos"
)
func FixCmd() *cli.Command {
@ -38,19 +36,22 @@ func FixCmd() *cli.Command {
Name: "fix",
Usage: gotext.Get("Attempt to fix problems with ALR"),
Action: func(c *cli.Context) error {
err := utils.DropCapsToAlrUser()
if err != nil {
slog.Error(gotext.Get("Can't drop privileges"))
return cli.Exit(err, 1)
if err := utils.ExitIfCantDropCapsToAlrUser(); err != nil {
return err
}
ctx := c.Context
cfg := config.New()
err = cfg.Load()
deps, err := appbuilder.
New(ctx).
WithConfig().
Build()
if err != nil {
slog.Error(gotext.Get("Error loading config"))
return cli.Exit(err, 1)
}
defer deps.Defer()
cfg := deps.Cfg
paths := cfg.GetPaths()
@ -86,25 +87,16 @@ func FixCmd() *cli.Command {
return cli.Exit(err, 1)
}
cfg = config.New()
err = cfg.Load()
deps, err = appbuilder.
New(ctx).
WithConfig().
WithDB().
WithRepos().
Build()
if err != nil {
slog.Error(gotext.Get("Error loading config"))
return cli.Exit(err, 1)
}
db := database.New(cfg)
err = db.Init(ctx)
if err != nil {
slog.Error(gotext.Get("Error initialization database"))
return cli.Exit(err, 1)
}
rs := repos.New(cfg, db)
err = rs.Pull(ctx, cfg.Repos())
if err != nil {
slog.Error(gotext.Get("Error pulling repos"))
return cli.Exit(err, 1)
}
defer deps.Defer()
slog.Info(gotext.Get("Done"))