From 6baa895c6ce1abe67849a6e9af4a58782f0de5b9 Mon Sep 17 00:00:00 2001 From: Alexander Date: Sun, 3 May 2026 16:10:24 +0200 Subject: [PATCH] Configure routing --- .gitignore | 23 +++++++++++++++++++++++ cmd/music-agregator/main.go | 5 +++-- internal/indexer/handler.go | 13 +++++++++++++ internal/indexer/indexer.go | 4 +--- internal/router/router.go | 15 +++++++++++++++ 5 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 internal/indexer/handler.go create mode 100644 internal/router/router.go diff --git a/.gitignore b/.gitignore index 6f22aa9..c2d5f5e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,26 @@ config.yaml /server /vendor pkg/metadatapb/ + +# Ignore all +* + +# Unignore all with extensions +!*.* + +# Unignore all dirs +!*/ + +### Above combination will ignore all files without extension ### + +# Ignore files with extension `.class` & `.sm` +*.class +*.sm + +# Ignore `bin` dir +bin/ +# or +*/bin/* + +# Ignore config.yaml +config.yaml diff --git a/cmd/music-agregator/main.go b/cmd/music-agregator/main.go index 91b4484..21d91c1 100644 --- a/cmd/music-agregator/main.go +++ b/cmd/music-agregator/main.go @@ -11,12 +11,12 @@ import ( // My modules "homelab.lan/music-agregator/internal/config" + appRouter "homelab.lan/music-agregator/internal/router" ) func main() { log.Logger = zerolog.New(zerolog.ConsoleWriter{Out: os.Stderr}). With().Timestamp().Logger() - router := gin.Default() configPath := flag.String("config", "", "Path to the config file") flag.Parse() @@ -27,12 +27,13 @@ func main() { } log.Info().Interface("config", cfg).Msg("Loaded config") + router := gin.Default() + appRouter.SetupRoutes(router) router.GET("/ping", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "pong", }) }) - router.Run() } diff --git a/internal/indexer/handler.go b/internal/indexer/handler.go new file mode 100644 index 0000000..22571c2 --- /dev/null +++ b/internal/indexer/handler.go @@ -0,0 +1,13 @@ +package indexer + +import ( + "net/http" + + "github.com/gin-gonic/gin" +) + +func SetupRoutes(r *gin.RouterGroup) { + r.GET("/", func(c *gin.Context) { + c.JSON(http.StatusOK, gin.H{"message": "hello from indexer"}) + }) +} diff --git a/internal/indexer/indexer.go b/internal/indexer/indexer.go index 173e4aa..43e3732 100644 --- a/internal/indexer/indexer.go +++ b/internal/indexer/indexer.go @@ -1,8 +1,6 @@ package indexer -import ( - "fmt" -) +import () type Indexer interface { } diff --git a/internal/router/router.go b/internal/router/router.go new file mode 100644 index 0000000..9c306d8 --- /dev/null +++ b/internal/router/router.go @@ -0,0 +1,15 @@ +package router + +import ( + "homelab.lan/music-agregator/internal/indexer" + + "github.com/gin-gonic/gin" +) + +func SetupRoutes(r *gin.Engine) { + api := r.Group("/api/v1") + + indexerGroup := api.Group("/indexer") + + indexer.SetupRoutes(indexerGroup) +}