Remove packages from DB when removing repository
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Elara 2022-11-30 19:14:07 -08:00
parent a88adb43fe
commit 1377ef1bc9
3 changed files with 13 additions and 3 deletions

View File

@ -60,7 +60,7 @@ func GetPkg(db *genji.DB, where string, args ...any) (*Package, error) {
return out, err return out, err
} }
// DeletePkg deletes all packages matching the where conditions // DeletePkgs deletes all packages matching the where conditions
func DeletePkg(db *genji.DB, where string, args ...any) error { func DeletePkgs(db *genji.DB, where string, args ...any) error {
return db.Exec("DELETE * FROM pkgs WHERE "+where, args...) return db.Exec("DELETE * FROM pkgs WHERE "+where, args...)
} }

View File

@ -222,7 +222,7 @@ func processRepoChanges(ctx context.Context, repo types.Repo, r *git.Repository,
return err return err
} }
err = db.DeletePkg(gdb, "name = ? AND repository = ?", pkg.Name, repo.Name) err = db.DeletePkgs(gdb, "name = ? AND repository = ?", pkg.Name, repo.Name)
if err != nil { if err != nil {
return err return err
} }

10
repo.go
View File

@ -66,6 +66,11 @@ func addrepoCmd(c *cli.Context) error {
log.Fatal("Error encoding config").Err(err).Send() log.Fatal("Error encoding config").Err(err).Send()
} }
err = repos.Pull(c.Context, gdb, cfg.Repos)
if err != nil {
log.Fatal("Error pulling repos").Err(err).Send()
}
return nil return nil
} }
@ -101,6 +106,11 @@ func removerepoCmd(c *cli.Context) error {
log.Fatal("Error removing repo directory").Err(err).Send() log.Fatal("Error removing repo directory").Err(err).Send()
} }
err = db.DeletePkgs(gdb, "repository = ?", name)
if err != nil {
log.Fatal("Error removing packages from database").Err(err).Send()
}
return nil return nil
} }