From eb51bdbfef8c2aacf0fdfde279a40de7f74c8d86 Mon Sep 17 00:00:00 2001 From: Zach Berwaldt Date: Mon, 18 Mar 2024 21:27:24 -0400 Subject: clean up, add better error handling --- api/internal/database/database.go | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'api/internal/database') diff --git a/api/internal/database/database.go b/api/internal/database/database.go index 1866655..1a55127 100644 --- a/api/internal/database/database.go +++ b/api/internal/database/database.go @@ -2,23 +2,29 @@ package database import ( "database/sql" - _ "github.com/mattn/go-sqlite3" + "fmt" "log" "path/filepath" "water/api/internal/config" + + _ "github.com/mattn/go-sqlite3" ) -func EstablishDBConnection() *sql.DB { +func EstablishDBConnection() (*sql.DB, error) { c, err := config.Load() + if err != nil { + return nil, fmt.Errorf("error while reading config file: %w", err) + } driver := c.GetString("DB_DRIVER") path, err := filepath.Abs(c.GetString("DB_PATH")) + log.Println("my db path: ", path) if err != nil { - log.Fatal("There was and error getting the absolute path of the database.") + return nil, fmt.Errorf("failed to get absolute path of the database: %w", err) } db, err := sql.Open(driver, path) if err != nil { - panic(err) + return nil, fmt.Errorf("error while opening the database: %w", err) } - return db -} \ No newline at end of file + return db, nil +} -- cgit v1.1