28 lines
575 B
Go
28 lines
575 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/jmoiron/sqlx"
|
|
_ "github.com/lib/pq"
|
|
"holiday-api/db"
|
|
"os"
|
|
)
|
|
|
|
func envMustExist(env string) string {
|
|
if value, exists := os.LookupEnv(env); !exists {
|
|
panic(fmt.Sprintf("env variable '%s' not defined", env))
|
|
} else {
|
|
return value
|
|
}
|
|
}
|
|
|
|
func connectToDb() (*sqlx.DB, error) {
|
|
host := envMustExist("PSQL_HOST")
|
|
port := envMustExist("PSQL_PORT")
|
|
user := envMustExist("PSQL_USER")
|
|
password := envMustExist("PSQL_PASSWORD")
|
|
dbname := envMustExist("PSQL_DB")
|
|
|
|
return db.ConnectToDbNamed(host, port, user, password, dbname)
|
|
}
|