Files
query-orchestration/internal/server/server.go
T
Michael McGuinness 0ebb8a21a1 Merged in bugfix/cleanup (pull request #10)
Clean Up Testing and Linting

* somescriptcleanup

* mostgolangci

* deplatest

* imageversions

* usingscratch

* movedqueuefrtesting

* finishedunittesting

* linting

* taskfilecontext
2025-01-10 11:12:03 +00:00

42 lines
761 B
Go

package server
import (
"context"
"queryorchestration/internal/database"
"queryorchestration/internal/database/repository"
"queryorchestration/internal/otel"
"github.com/go-playground/validator/v10"
)
type Config struct {
Database *database.Connection
Validator *validator.Validate
}
type NewConfig struct {
BasePath string
}
func New(ctx context.Context, cfg *NewConfig) *Config {
closeTracer := otel.New(ctx)
defer closeTracer()
database.RunMigrations(&database.MigrationConfig{
BasePath: cfg.BasePath,
})
dbPool := database.GetDBPool(ctx)
dbQueries := repository.New(dbPool)
db := &database.Connection{
Pool: dbPool,
Queries: dbQueries,
}
valid := validator.New()
return &Config{
Database: db,
Validator: valid,
}
}