summary refs log tree commit diff
diff options
context:
space:
mode:
authorSamuel <34555296+Flam3rboy@users.noreply.github.com>2021-10-15 00:49:33 +0200
committerGitHub <noreply@github.com>2021-10-15 00:49:33 +0200
commitd9f4af661b4d96a39addfd5195bff5dc52a29baf (patch)
tree746bdb084f36d32e197fdd7b41d4eb3e28c4269f
parentMerge pull request #448 from Mr2u/master (diff)
parentMerge pull request #454 from hbjydev/status-probes (diff)
downloadserver-d9f4af661b4d96a39addfd5195bff5dc52a29baf.tar.xz
Merge pull request #460 from fosscord/dev
merge dev in master
-rw-r--r--api/src/middlewares/Authentication.ts2
-rw-r--r--api/src/routes/-/healthz.ts17
-rw-r--r--api/src/routes/-/readyz.ts17
-rw-r--r--bundle/scripts/build.js25
4 files changed, 49 insertions, 12 deletions
diff --git a/api/src/middlewares/Authentication.ts b/api/src/middlewares/Authentication.ts

index 5a082751..59a181e6 100644 --- a/api/src/middlewares/Authentication.ts +++ b/api/src/middlewares/Authentication.ts
@@ -9,6 +9,8 @@ export const NO_AUTHORIZATION_ROUTES = [ "/ping", "/gateway", "/experiments", + "/-/readyz", + "/-/healthz", /\/guilds\/\d+\/widget\.(json|png)/ ]; diff --git a/api/src/routes/-/healthz.ts b/api/src/routes/-/healthz.ts new file mode 100644
index 00000000..a42575f8 --- /dev/null +++ b/api/src/routes/-/healthz.ts
@@ -0,0 +1,17 @@ +import { Router, Response, Request } from "express"; +import { route } from "@fosscord/api"; +import { getConnection } from "typeorm"; + +const router = Router(); + +router.get("/", route({}), (req: Request, res: Response) => { + try { + // test that the database is alive & responding + getConnection(); + return res.sendStatus(200); + } catch(e) { + res.sendStatus(503); + } +}); + +export default router; diff --git a/api/src/routes/-/readyz.ts b/api/src/routes/-/readyz.ts new file mode 100644
index 00000000..a42575f8 --- /dev/null +++ b/api/src/routes/-/readyz.ts
@@ -0,0 +1,17 @@ +import { Router, Response, Request } from "express"; +import { route } from "@fosscord/api"; +import { getConnection } from "typeorm"; + +const router = Router(); + +router.get("/", route({}), (req: Request, res: Response) => { + try { + // test that the database is alive & responding + getConnection(); + return res.sendStatus(200); + } catch(e) { + res.sendStatus(503); + } +}); + +export default router; diff --git a/bundle/scripts/build.js b/bundle/scripts/build.js
index dfbaec15..dbc305a9 100644 --- a/bundle/scripts/build.js +++ b/bundle/scripts/build.js
@@ -8,12 +8,12 @@ const dirs = ["api", "util", "cdn", "gateway", "bundle"]; const verbose = argv.includes("verbose") || argv.includes("v"); -if(argv.includes("clean")){ - dirs.forEach(a=>{ - var d = "../"+a+"/dist"; - if(fse.existsSync(d)) { - fse.rmSync(d,{recursive: true}); - if(verbose) console.log(`Deleted ${d}!`); +if (argv.includes("clean")) { + dirs.forEach((a) => { + var d = "../" + a + "/dist"; + if (fse.existsSync(d)) { + fse.rmSync(d, { recursive: true }); + if (verbose) console.log(`Deleted ${d}!`); } }); } @@ -24,9 +24,9 @@ fse.copySync( path.join(__dirname, "..", "dist", "api", "client_test") ); fse.copySync(path.join(__dirname, "..", "..", "api", "locales"), path.join(__dirname, "..", "dist", "api", "locales")); -dirs.forEach(a=>{ - fse.copySync("../"+a+"/src", "dist/"+a+"/src"); - if(verbose) console.log(`Copied ${"../"+a+"/dist"} -> ${"dist/"+a+"/src"}!`); +dirs.forEach((a) => { + fse.copySync("../" + a + "/src", "dist/" + a + "/src"); + if (verbose) console.log(`Copied ${"../" + a + "/dist"} -> ${"dist/" + a + "/src"}!`); }); console.log("Copying src files done"); @@ -34,10 +34,11 @@ console.log("Compiling src files ..."); console.log( execSync( - "node \"" + + 'node "' + path.join(__dirname, "..", "node_modules", "typescript", "lib", "tsc.js") + - "\" -p \"" + - path.join(__dirname, "..") + "\"", + '" -p "' + + path.join(__dirname, "..") + + '"', { cwd: path.join(__dirname, ".."), shell: true,