first with full handle over rpm
Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
This commit is contained in:
parent
7948368573
commit
274ea454dd
50 changed files with 4309 additions and 0 deletions
50
internal/api/router.go
Normal file
50
internal/api/router.go
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
package api
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/go-chi/chi/v5"
|
||||
"github.com/go-chi/chi/v5/middleware"
|
||||
)
|
||||
|
||||
func NewRouter(repoHandler *RepoHandler, cloneHandler *CloneHandler, syncHandler *SyncHandler, snapshotHandler *SnapshotHandler, proxyHandler *ProxyHandler) http.Handler {
|
||||
r := chi.NewRouter()
|
||||
r.Use(middleware.Logger)
|
||||
r.Use(middleware.Recoverer)
|
||||
r.Use(middleware.RequestID)
|
||||
|
||||
r.Get("/mirror/{repo_id}/*", proxyHandler.ServeFile)
|
||||
|
||||
r.Get("/health", func(w http.ResponseWriter, r *http.Request) {
|
||||
JSON(w, http.StatusOK, map[string]string{"status": "ok"})
|
||||
})
|
||||
|
||||
r.Route("/api/v1", func(r chi.Router) {
|
||||
r.Route("/repos", func(r chi.Router) {
|
||||
r.Post("/", repoHandler.Create)
|
||||
r.Get("/", repoHandler.List)
|
||||
r.Get("/{id}", repoHandler.Get)
|
||||
r.Delete("/{id}", repoHandler.Delete)
|
||||
|
||||
r.Post("/{id}/clone", cloneHandler.StartClone)
|
||||
r.Get("/{id}/clone/status", cloneHandler.GetStatus)
|
||||
|
||||
r.Post("/{id}/sync/trigger", syncHandler.Trigger)
|
||||
r.Get("/{id}/sync/pending", syncHandler.ListPending)
|
||||
r.Post("/{id}/sync/approve", syncHandler.Approve)
|
||||
r.Post("/{id}/sync/reject", syncHandler.Reject)
|
||||
r.Post("/{id}/sync/block", syncHandler.Block)
|
||||
r.Post("/{id}/sync/unblock", syncHandler.Unblock)
|
||||
r.Get("/{id}/sync/blocked", syncHandler.ListBlocked)
|
||||
|
||||
r.Post("/{id}/snapshots", snapshotHandler.Create)
|
||||
r.Get("/{id}/snapshots", snapshotHandler.List)
|
||||
r.Get("/{id}/snapshots/diff", snapshotHandler.Diff)
|
||||
r.Get("/{id}/snapshots/{snap_id}", snapshotHandler.Get)
|
||||
r.Delete("/{id}/snapshots/{snap_id}", snapshotHandler.Delete)
|
||||
r.Post("/{id}/snapshots/{snap_id}/rollback", snapshotHandler.Rollback)
|
||||
})
|
||||
})
|
||||
|
||||
return r
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue