From a089651693cf6912864a6589de0f7aad911a8b83 Mon Sep 17 00:00:00 2001 From: Rory& Date: Thu, 29 May 2025 22:28:19 +0200 Subject: Get database working --- src/api/routes/auth/registerRoute.js | 2 +- src/api/routes/statusRoute.js | 2 +- src/db/db.js | 9 ++++++--- src/db/schemas/user.js | 14 ++++++++++++++ src/db/schemas/userSchema.js | 14 -------------- src/util/index.js | 1 + src/util/secretUtils.js | 9 +++++++++ 7 files changed, 32 insertions(+), 19 deletions(-) create mode 100644 src/db/schemas/user.js delete mode 100644 src/db/schemas/userSchema.js create mode 100644 src/util/secretUtils.js (limited to 'src') diff --git a/src/api/routes/auth/registerRoute.js b/src/api/routes/auth/registerRoute.js index b71c466..14188a4 100644 --- a/src/api/routes/auth/registerRoute.js +++ b/src/api/routes/auth/registerRoute.js @@ -1,4 +1,4 @@ -import { User } from "#db/schemas/userSchema.js"; +import { User } from "#db/schemas/user.js"; export const registerRoute = { route: "/auth/register", diff --git a/src/api/routes/statusRoute.js b/src/api/routes/statusRoute.js index f1cdb99..b9974a5 100644 --- a/src/api/routes/statusRoute.js +++ b/src/api/routes/statusRoute.js @@ -1,4 +1,4 @@ -import { User } from "#db/schemas/userSchema.js"; +import { User } from "#db/schemas/user.js"; export const statusRoute = { route: "/status", diff --git a/src/db/db.js b/src/db/db.js index bf7ccfa..36f2105 100644 --- a/src/db/db.js +++ b/src/db/db.js @@ -1,13 +1,16 @@ import { connect } from "mongoose"; +import { readSecret } from "#util/secretUtils.js"; export async function initDb() { - const connStr = "mongodb://root:Foxy1987@localhost/myproject"; + const connectionString = await readSecret( + process.env["DATABASE_SECRET_PATH"], + ); try { - const res = await connect(connStr); + const res = await connect(connectionString); if (res.connection.readyState === 1) { console.log("[MONGODB] Connected successfully!"); } else { - console.error("[MONGODB] Failed to connect to ", connStr); + console.error("[MONGODB] Failed to connect to ", connectionString); } } catch (e) { console.error("[MONGODB] Error connecting to database!"); diff --git a/src/db/schemas/user.js b/src/db/schemas/user.js new file mode 100644 index 0000000..eaddb08 --- /dev/null +++ b/src/db/schemas/user.js @@ -0,0 +1,14 @@ +import { model, Schema } from "mongoose"; + +export const userSchema = new Schema({ + username: { + type: String, + required: true, + unique: true, + trim: true, + }, +}); + +export const User = model("user", userSchema); + +console.log("[MONGODB] User schema initialized successfully!"); diff --git a/src/db/schemas/userSchema.js b/src/db/schemas/userSchema.js deleted file mode 100644 index eaddb08..0000000 --- a/src/db/schemas/userSchema.js +++ /dev/null @@ -1,14 +0,0 @@ -import { model, Schema } from "mongoose"; - -export const userSchema = new Schema({ - username: { - type: String, - required: true, - unique: true, - trim: true, - }, -}); - -export const User = model("user", userSchema); - -console.log("[MONGODB] User schema initialized successfully!"); diff --git a/src/util/index.js b/src/util/index.js index e69de29..9a6c774 100644 --- a/src/util/index.js +++ b/src/util/index.js @@ -0,0 +1 @@ +export * from "./secretUtils.js"; diff --git a/src/util/secretUtils.js b/src/util/secretUtils.js new file mode 100644 index 0000000..33e5fef --- /dev/null +++ b/src/util/secretUtils.js @@ -0,0 +1,9 @@ +import fs from "node:fs/promises"; + +export async function readSecret(path) { + if (!path) { + throw new Error("Path to secret file is required"); + } + const content = await fs.readFile(path, "utf8"); + return content.trim(); +} -- cgit 1.5.1