🔒 add more env variables for backend
Signed-off-by: Sindre Kjelsrud <kjelsrudsindre@gmail.com>
This commit is contained in:
parent
dbd6050764
commit
369ae7c7ed
4 changed files with 26 additions and 77 deletions
|
@ -5,19 +5,28 @@ import (
|
|||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"strings"
|
||||
"strconv"
|
||||
|
||||
"github.com/joho/godotenv"
|
||||
_ "github.com/lib/pq"
|
||||
)
|
||||
|
||||
const (
|
||||
host = "postgres"
|
||||
port = 5432 // This is the default port for PostgreSQL
|
||||
user = "admin"
|
||||
password = "helse123"
|
||||
dbname = "helseveileder"
|
||||
func init() {
|
||||
if err := godotenv.Load(".env"); err != nil {
|
||||
log.Fatalf("Error loading .env file: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
var (
|
||||
host = os.Getenv("DB_HOST")
|
||||
portStr = os.Getenv("DB_PORT")
|
||||
user = os.Getenv("DB_USER")
|
||||
password = os.Getenv("DB_PASSWORD")
|
||||
dbname = os.Getenv("DB_NAME")
|
||||
)
|
||||
|
||||
var port, _ = strconv.Atoi(portStr)
|
||||
|
||||
func SetupDb() {
|
||||
// Connection string
|
||||
psqlInfo := fmt.Sprintf("host=%s port=%d user=%s "+
|
||||
|
@ -36,73 +45,4 @@ func SetupDb() {
|
|||
if err != nil {
|
||||
log.Fatalf("Error connecting to the database: %v\n", err)
|
||||
}
|
||||
|
||||
// SQL statements to create tables
|
||||
createTableStatements := []string{
|
||||
`CREATE TABLE IF NOT EXISTS Spørsmål (
|
||||
spørsmålID SERIAL PRIMARY KEY,
|
||||
tekst TEXT NOT NULL
|
||||
);`,
|
||||
`CREATE TABLE IF NOT EXISTS SpørsmålSvar (
|
||||
svarID SERIAL PRIMARY KEY,
|
||||
spørsmålID INT REFERENCES Spørsmål(spørsmålID),
|
||||
chatgpt BOOL NOT NULL,
|
||||
svartekst TEXT NOT NULL
|
||||
);`,
|
||||
`CREATE TABLE IF NOT EXISTS Respondent (
|
||||
respondentID SERIAL PRIMARY KEY,
|
||||
alder TEXT NOT NULL,
|
||||
utdanningsgrad TEXT NOT NULL,
|
||||
helsepersonell BOOL NOT NULL,
|
||||
harlisens BOOL NOT NULL,
|
||||
kjønn TEXT NOT NULL,
|
||||
svartfør BOOL NOT NULL,
|
||||
fylke TEXT NOT NULL,
|
||||
dato TEXT NOT NULL
|
||||
);`,
|
||||
`CREATE TABLE IF NOT EXISTS SvarVurdering (
|
||||
vurderingID SERIAL PRIMARY KEY,
|
||||
respondentID INT REFERENCES Respondent(respondentID),
|
||||
svarID INT REFERENCES SpørsmålSvar(svarID),
|
||||
kunnskap INT,
|
||||
empati INT,
|
||||
hjelpsomhet INT
|
||||
);`,
|
||||
`CREATE TABLE IF NOT EXISTS Evaluering (
|
||||
evalueringtekst TEXT
|
||||
);`,
|
||||
`CREATE TABLE IF NOT EXISTS FeilRapport (
|
||||
feiltekst TEXT
|
||||
);`,
|
||||
}
|
||||
|
||||
// Execute SQL statements
|
||||
for _, stmt := range createTableStatements {
|
||||
_, err := db.Exec(stmt)
|
||||
if err != nil {
|
||||
log.Fatalf("Error creating table: %v\n", err)
|
||||
}
|
||||
}
|
||||
|
||||
insertDb(db, "cmd/db/queries/insert_questions_sql_query.sql")
|
||||
insertDb(db, "cmd/db/queries/insert_answers_sql_query.sql")
|
||||
|
||||
fmt.Println("Tables created successfully.")
|
||||
}
|
||||
|
||||
func insertDb(db *sql.DB, filepath string) {
|
||||
file, err := os.ReadFile(filepath)
|
||||
if err != nil {
|
||||
// handle error
|
||||
log.Fatalf("Error reading file: %v\n", err)
|
||||
}
|
||||
|
||||
requests := strings.Split(string(file), ";")
|
||||
for _, request := range requests {
|
||||
_, err := db.Exec(request)
|
||||
// do whatever you need with result and error
|
||||
if err != nil {
|
||||
log.Fatalf("Error creating table: %v\n", err)
|
||||
}
|
||||
}
|
||||
}
|
Reference in a new issue