nthmail/cmd/server/main.go
Guilherme Rugai Freire 48e7b5a9a5
integrate web and mail server
now, there is only one binary that starts both servers,
making them use the same SQL connection.

this commit also added some `defer tx.Commit()` to ensure
all the transactions were closed
2024-07-10 16:56:46 -03:00

35 lines
551 B
Go

package main
import (
"database/sql"
"github.com/GRFreire/nthmail/pkg/mail_server"
"github.com/GRFreire/nthmail/pkg/web_server"
"log"
"sync"
_ "github.com/mattn/go-sqlite3"
)
func main() {
db, err := sql.Open("sqlite3", "./db.db")
if err != nil {
log.Fatal(err)
}
defer db.Close()
var wg sync.WaitGroup
wg.Add(1)
go func(db *sql.DB) {
defer wg.Done()
mail_server.Start(db)
}(db)
wg.Add(1)
go func(db *sql.DB) {
defer wg.Done()
web_server.Start(db)
}(db)
wg.Wait()
}