make sure we use proper context

This commit is contained in:
Robin Olsen
2026-03-10 12:18:48 +01:00
parent 84a59895a7
commit 4acf12b0da
3 changed files with 7 additions and 7 deletions

View File

@@ -17,7 +17,7 @@ var SubmitCmd = &cobra.Command{
return fmt.Errorf("application context not initialized")
}
db, err := storage.NewMongoStorageInteractive(app.Config.MongoURI)
db, err := storage.NewMongoStorageInteractive(cmd.Context(), app.Config.MongoURI)
if err != nil {
return fmt.Errorf("failed to connect to database: %w", err)
}

View File

@@ -18,27 +18,27 @@ type MongoStorage struct {
client *mongo.Client
}
func NewMongoStorage(uri, username, password string) (*MongoStorage, error) {
func NewMongoStorage(ctx context.Context, uri, username, password string) (*MongoStorage, error) {
credentials := options.Credential{
Username: username,
Password: password,
}
client, err := mongo.Connect(context.Background(),
client, err := mongo.Connect(ctx,
options.Client().ApplyURI(uri).SetAuth(credentials))
if err != nil {
return nil, fmt.Errorf("failed to connect to MongoDB: %v", err)
}
if err := client.Ping(context.Background(), nil); err != nil {
if err := client.Ping(ctx, nil); err != nil {
return nil, fmt.Errorf("cannot reach MongoDB: %v", err)
}
return &MongoStorage{client: client}, nil
}
func NewMongoStorageInteractive(uri string) (*MongoStorage, error) {
func NewMongoStorageInteractive(ctx context.Context, uri string) (*MongoStorage, error) {
var username, password string
if os.Getenv("DB_USER") == "" {
if err := huh.NewInput().
@@ -72,7 +72,7 @@ func NewMongoStorageInteractive(uri string) (*MongoStorage, error) {
}
mongoClient, err := NewMongoStorage(uri, username, password)
mongoClient, err := NewMongoStorage(ctx, uri, username, password)
if err != nil {
return nil, fmt.Errorf("failed to connect to database: %w", err)
}