refactor for using repomaint
This commit is contained in:
@@ -18,7 +18,7 @@ func (s *Server) handlerRefresh(w http.ResponseWriter, req *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
if err := s.c.Refresh(); err != nil {
|
||||
if err := s.rs.Sync(); err != nil {
|
||||
slog.Error("refresh failed", "err", err)
|
||||
http.Error(w, "refresh failed", http.StatusInternalServerError)
|
||||
return
|
||||
|
||||
@@ -11,6 +11,7 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/ewpt3ch/pkgstash/internal/cache"
|
||||
"github.com/ewpt3ch/pkgstash/internal/repomaint"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -36,7 +37,10 @@ func newTestServer(t *testing.T, mirrorHandler http.HandlerFunc) (*httptest.Serv
|
||||
mirror := httptest.NewServer(mirrorHandler)
|
||||
t.Cleanup(func() { mirror.Close() })
|
||||
|
||||
c, err := cache.NewCache(t.TempDir(), []string{mirror.URL + "/"}, []string{"core"})
|
||||
croot := t.TempDir()
|
||||
mrepos := []string{"core"}
|
||||
|
||||
c, err := cache.NewCache(croot, []string{mirror.URL + "/"}, mrepos)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create cache: %v", err)
|
||||
}
|
||||
@@ -44,10 +48,15 @@ func newTestServer(t *testing.T, mirrorHandler http.HandlerFunc) (*httptest.Serv
|
||||
Port: "0",
|
||||
Token: "testtoken",
|
||||
}
|
||||
rs, err := repomaint.NewRepoSync(c, croot, mrepos)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create repomain: %v", err)
|
||||
}
|
||||
logLevel := new(slog.LevelVar)
|
||||
srv := &Server{
|
||||
cfg: cfg,
|
||||
c: c,
|
||||
rs: rs,
|
||||
logLevel: logLevel,
|
||||
}
|
||||
|
||||
|
||||
+9
-1
@@ -12,11 +12,13 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/ewpt3ch/pkgstash/internal/cache"
|
||||
"github.com/ewpt3ch/pkgstash/internal/repomaint"
|
||||
)
|
||||
|
||||
type Server struct {
|
||||
cfg *Config
|
||||
c *cache.Cache
|
||||
rs *repomaint.RepoSync
|
||||
logLevel *slog.LevelVar
|
||||
}
|
||||
|
||||
@@ -58,9 +60,15 @@ func main() {
|
||||
}
|
||||
defer c.Close() //nolint:errcheck // best effort cleanup on exit
|
||||
|
||||
rs, err := repomaint.NewRepoSync(c, cfg.CacheRoot, cfg.MirroredRepos)
|
||||
if err != nil {
|
||||
slog.Error("failed to create repomaint", "err", err)
|
||||
}
|
||||
|
||||
srv := &Server{
|
||||
cfg: cfg,
|
||||
c: c,
|
||||
rs: rs,
|
||||
logLevel: logLevel,
|
||||
}
|
||||
|
||||
@@ -69,7 +77,7 @@ func main() {
|
||||
mux.HandleFunc("POST /api/refresh", srv.handlerRefresh)
|
||||
mux.HandleFunc("POST /api/loglevel", srv.handlerLogLevel)
|
||||
|
||||
if err := srv.c.Refresh(); err != nil {
|
||||
if err := srv.c.FetchDB(); err != nil {
|
||||
slog.Error("failed to refesh db files", "err", err)
|
||||
//nolint:errcheck //already exiting
|
||||
_ = c.Close() // best effort cleanup on exit
|
||||
|
||||
Reference in New Issue
Block a user