notifier/internal/initialize/mongo.go
2024-12-16 14:17:25 +03:00

29 lines
562 B
Go

package initialize
import (
"context"
mg "gitea.pena/PenaSide/common/mongo"
"go.mongodb.org/mongo-driver/mongo"
"time"
)
func MongoInit(ctx context.Context, config Config) (*mongo.Database, error) {
newCtx, cancel := context.WithTimeout(ctx, 10*time.Second)
defer cancel()
deps := mg.ConnectDeps{
Configuration: &config.External.Database,
Timeout: 10 * time.Second,
}
mdb, err := mg.Connect(newCtx, &deps)
if err != nil {
return nil, err
}
err = mdb.Client().Ping(newCtx, nil)
if err != nil {
return nil, err
}
return mdb, nil
}