refactor return error when building booking service

This commit is contained in:
Ruidy 2024-08-24 19:35:31 +02:00
parent 04be887ad8
commit 963aa19b2c
No known key found for this signature in database
GPG key ID: E00F51288CB857CC
3 changed files with 13 additions and 9 deletions

View file

@ -1,9 +1,9 @@
FROM golang:1.23-alpine AS builder
RUN apk update && apk add --no-cache \
build-base \
ca-certificates \
&& update-ca-certificates
build-base \
ca-certificates \
&& update-ca-certificates
WORKDIR /app

View file

@ -20,8 +20,8 @@ type Service struct {
db *gorm.DB
}
func NewService(db *gorm.DB) *Service {
return &Service{db: db}
func NewService(db *gorm.DB) (*Service, error) {
return &Service{db: db}, nil
}
func (bs Service) All() []*Line {

12
main.go
View file

@ -4,7 +4,6 @@ import (
"context"
"embed"
"fmt"
"log"
"os"
"os/signal"
"strconv"
@ -54,12 +53,17 @@ func run(c context.Context, getEnv func(string) string) error {
return fmt.Errorf("error connecting to the database %s", err)
}
// build booking service
err = db.AutoMigrate(&booking.Booking{}, &booking.BookingRequest{}, &booking.Item{})
if err != nil {
return fmt.Errorf("error migrating the database %s", err)
}
// build booking service
bs, err := booking.NewService(db)
if err != nil {
return fmt.Errorf("error starting booking service %s", err)
}
// build pdf service
ps, err := pdf.NewPdfService(
getEnv("HTMLDOCS_PROJECT_ID"),
@ -85,7 +89,7 @@ func run(c context.Context, getEnv func(string) string) error {
// build calendar service
cs, err := calendar.NewService(ctx, getEnv("CALENDAR_CREDENTIALS"))
if err != nil {
log.Fatalf("error starting calendar service %s", err)
return fmt.Errorf("error starting calendar service %s", err)
}
// starting server
@ -99,7 +103,7 @@ func run(c context.Context, getEnv func(string) string) error {
origins := strings.Split(ogs, ",")
srv, err := server.New(
booking.NewService(db), // TODO: should validate the booking service building
bs,
as,
ps,
cs,