Skip to content
Merged

Sync #49

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.idea
.vscode
.DS_Store
.swagger
.idea
.zed
.vscode
8 changes: 4 additions & 4 deletions Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,14 @@ test:
gen:
go generate ./...

# Generate openapi.yaml
apidoc:
go tool swag init -g cmd/app/main.go -o . -ot yaml --v3.1 --parseDependency && mv swagger.yaml openapi.yaml

# Generate gorm repositories using gorm cli
repos:
go tool gorm gen -i ./app/book/repository.go -o ./app/book/bookrepo

# Generate openapi.yaml
apidoc:
go tool swag init -g cmd/app/main.go -o . -ot yaml --v3.1 --parseDependency && mv swagger.yaml openapi.yaml

# Build production distroless image
build-for-prod:
docker build -f prod.Dockerfile . -t myapp-app
6 changes: 3 additions & 3 deletions app/book/handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,14 @@ import (
)

type Handler struct {
validator *validator.Validate
bookRepo IBookRepo
validator *validator.Validate
}

func New(validator *validator.Validate, db *gorm.DB) *Handler {
func New(db *gorm.DB, validator *validator.Validate) *Handler {
return &Handler{
validator: validator,
bookRepo: bookrepo.IBookRepo[model.Book](db),
validator: validator,
}
}

Expand Down
6 changes: 3 additions & 3 deletions app/router/router.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import (
mrl "myapp/pkg/middleware/requestlog"
)

func New(c *config.ConfCORS, l *zerolog.Logger, v *validator.Validate, db *gorm.DB) *chi.Mux {
func New(c *config.ConfCORS, l *zerolog.Logger, db *gorm.DB, v *validator.Validate) *chi.Mux {
r := chi.NewRouter()
r.Get("/livez", func(w http.ResponseWriter, _ *http.Request) {
w.Write([]byte("."))
Expand All @@ -34,12 +34,12 @@ func New(c *config.ConfCORS, l *zerolog.Logger, v *validator.Validate, db *gorm.

r.Route("/v1", func(r chi.Router) {
r.Use(cors.Handler)
r.Use(m.ContentTypeJSON)
r.Use(hlog.NewHandler(*l))
r.Use(hlog.RequestIDHandler("request_id", "X-Request-ID"))
r.Use(mrl.NewHandler)
r.Use(m.ContentTypeJSON)

r.Route("/books", book.New(v, db).Register)
r.Route("/books", book.New(db, v).Register)
})

return r
Expand Down
6 changes: 3 additions & 3 deletions cmd/app/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,6 @@ func main() {
zerolog.SetGlobalLevel(logLevel)
l := zerolog.New(os.Stderr).With().Timestamp().Logger()

v := validator.New()

logLevelDB := gormlogger.Error
if c.DB.Debug {
logLevelDB = gormlogger.Info
Expand All @@ -62,7 +60,9 @@ func main() {
return
}

mux := router.New(&c.CORS, &l, v, db)
v := validator.New()

mux := router.New(&c.CORS, &l, db, v)

s := &http.Server{
Addr: fmt.Sprintf(":%d", c.Server.Port),
Expand Down
2 changes: 1 addition & 1 deletion pkg/middleware/requestlog/handler.go
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Package requestlog
// Copyright 2019-2025 The Go Cloud Development Kit Authors
// Copyright 2018-2026 The Go Cloud Development Kit Authors
// Modified by Dumindu Madunuwan
//
// Licensed under the Apache License, Version 2.0 (the "License");
Expand Down
2 changes: 1 addition & 1 deletion pkg/middleware/requestlog/log_entry.go
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Package requestlog
// Copyright 2019-2025 The Go Cloud Development Kit Authors
// Copyright 2018-2026 The Go Cloud Development Kit Authors
// Modified by Dumindu Madunuwan
//
// Licensed under the Apache License, Version 2.0 (the "License");
Expand Down