From 8c9d19f6cdec5f95b47fa6821ae751682466a4f0 Mon Sep 17 00:00:00 2001 From: Owen Schwartz Date: Sun, 29 Sep 2024 14:26:16 -0400 Subject: [PATCH] Rename --- server/routers/gerbil/receiveBandwidth.ts | 2 +- server/routers/global/createSite.ts | 43 +++++++++++++++++++++++ server/routers/global/global.ts | 12 +++++++ server/routers/internal.ts | 4 +-- 4 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 server/routers/global/createSite.ts create mode 100644 server/routers/global/global.ts diff --git a/server/routers/gerbil/receiveBandwidth.ts b/server/routers/gerbil/receiveBandwidth.ts index 462c9787..ff17c53f 100644 --- a/server/routers/gerbil/receiveBandwidth.ts +++ b/server/routers/gerbil/receiveBandwidth.ts @@ -45,7 +45,7 @@ export const receiveBandwidth = async (req: Request, res: Response, next: NextFu res.status(200).json({ message: 'Bandwidth data updated successfully' }); } catch (error) { - console.error('Error updating bandwidth data:', error); + logger.error('Error updating bandwidth data:', error); res.status(500).json({ error: 'Internal server error' }); } }; diff --git a/server/routers/global/createSite.ts b/server/routers/global/createSite.ts new file mode 100644 index 00000000..1fed3d7d --- /dev/null +++ b/server/routers/global/createSite.ts @@ -0,0 +1,43 @@ +import { Request, Response, NextFunction } from 'express'; +import { DrizzleError, eq } from 'drizzle-orm'; +import { sites, resources, targets, exitNodes } from '@server/db/schema'; +import db from '@server/db'; +import logger from '@server/logger'; + +interface CreateSiteRequest { + publicKey: string; + name: string; + orgId: number; +} + +export const createSite = async (req: Request, res: Response, next: NextFunction): Promise => { + try { + const createSiteRequest: CreateSiteRequest = req.body; + + // pick a subdomain not used + // pick a subnet not used + // pick an exit node + + // const site = db + // .insert(sites) + // .values({ + // orgId: createSiteRequest.orgId, + // exitNode: exitNodeId, + // name: createSiteRequest.name, + // subdomain: subdomain, + // pubKey: createSiteRequest.publicKey, + // subnet: subnet, + // }) + // .returning() + // .get(); + + const site = { + + } + + res.status(200).json(site); + } catch (error) { + logger.error('Error creating site:', error); + res.status(500).json({ error: 'Internal server error' }); + } +}; \ No newline at end of file diff --git a/server/routers/global/global.ts b/server/routers/global/global.ts new file mode 100644 index 00000000..0993a2bd --- /dev/null +++ b/server/routers/global/global.ts @@ -0,0 +1,12 @@ +import { Router } from "express"; +import { createSite } from "./createSite"; + +const global = Router(); + +global.get("/", (_, res) => { + res.status(200).json({ message: "Healthy" }); +}); + +global.get("/createSite", createSite); + +export default global; diff --git a/server/routers/internal.ts b/server/routers/internal.ts index e0ba0cff..d6341b98 100644 --- a/server/routers/internal.ts +++ b/server/routers/internal.ts @@ -1,6 +1,6 @@ import { Router } from "express"; import gerbil from "./gerbil/gerbil"; -import gerbil from "./badger/badger"; +import badger from "./badger/badger"; import { traefikConfigProvider } from "@server/traefik-config-provider"; const unauth = Router(); @@ -9,7 +9,7 @@ unauth.get("/", (_, res) => { res.status(200).json({ message: "Healthy" }); }); -unauth.use("/badger", gerbil); +unauth.use("/badger", badger); unauth.use("/gerbil", gerbil); unauth.get("/traefik-config-provider", traefikConfigProvider);