From c6e0ae6fa0f9c40d4c1a74b25d18cf11d74be4e8 Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:23:09 +0530 Subject: build(Dockerfile): update server entry point path --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index e57ab2a..755ab99 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,8 @@ RUN npm run build FROM node:20-alpine as prod LABEL org.opencontainers.image.source=https://github.com/ghoshRitesh12/aniwatch-api -LABEL org.opencontainers.image.description="Aniwatch API docker image" +LABEL org.opencontainers.image.description="Node.js API for obtaining anime information from aniwatch.to (formerly zoro.to) written in TypeScript, made with Cheerio & Axios" +LABEL org.opencontainers.image.description "Node.js API for obtaining anime information from aniwatch.to (formerly zoro.to) written in TypeScript, made with Cheerio & Axios" LABEL org.opencontainers.image.licenses=MIT # create a non-privileged user @@ -52,6 +53,6 @@ ENV PORT=4000 # exposed port EXPOSE 4000 -CMD [ "node", "dist/server.js" ] +CMD [ "node", "dist/src/server.js" ] # exit \ No newline at end of file -- cgit v1.2.3 From 30784ca0ab52c4e873a27198bf2ef95bcc648200 Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:24:24 +0530 Subject: chore(ts): bump ts to latest version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 422a1c4..9a24e0e 100644 --- a/package.json +++ b/package.json @@ -49,6 +49,6 @@ "jest": "^29.6.2", "ts-jest": "^29.1.1", "tsx": "^4.2.0", - "typescript": "^5.1.6" + "typescript": "^5.3.2" } } \ No newline at end of file -- cgit v1.2.3 From 08a9844e98d9f6795b8198391c43eddd5bc9dcb8 Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:24:42 +0530 Subject: build: add `vercel-build` script --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 9a24e0e..0753fbf 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "start": "tsx src/server.ts", "dev": "tsx watch src/server.ts", "build": "tsc -p tsconfig.json", + "vercel-build": "echo \"Hello\"", "prepare": "husky install", "test": "jest", "healthcheck": "curl -f http://localhost:4000/health" -- cgit v1.2.3 From 2b44770a5e4ed5010c3f3de04a7fcbe6908662fc Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:24:58 +0530 Subject: build: add vercel config file --- vercel.json | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 vercel.json diff --git a/vercel.json b/vercel.json new file mode 100644 index 0000000..2bc8c24 --- /dev/null +++ b/vercel.json @@ -0,0 +1,8 @@ +{ + "rewrites": [ + { + "source": "(.*)", + "destination": "/api" + } + ] +} \ No newline at end of file -- cgit v1.2.3 From 5da81f18ce271df71a80d63a19d2f6ce7da6d072 Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:25:22 +0530 Subject: feat: add vercel api entry point file --- api/index.ts | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 api/index.ts diff --git a/api/index.ts b/api/index.ts new file mode 100644 index 0000000..be3392b --- /dev/null +++ b/api/index.ts @@ -0,0 +1,3 @@ +import app from "../src/server.js"; + +export default app; -- cgit v1.2.3 From c079bf808ab2e6ec7fa58832f842b05e6212111a Mon Sep 17 00:00:00 2001 From: Ritesh Ghosh Date: Wed, 29 Nov 2023 19:26:08 +0530 Subject: feat: add check for vercel deployment --- src/server.ts | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/server.ts b/src/server.ts index c10b91f..31f53ab 100644 --- a/src/server.ts +++ b/src/server.ts @@ -26,12 +26,17 @@ app.use("/anime", animeRouter); app.use(notFoundHandler); app.use(errorHandler); -app.listen(PORT, () => { - console.log(`⚔️ api @ http://localhost:${PORT}`); -}); - -// don't sleep -setInterval(() => { - console.log("HEALTHCHECK ;)", new Date().toLocaleString()); - https.get("https://api-aniwatch.onrender.com/health"); -}, 540000); +if (!Boolean(process?.env?.IS_VERCEL_DEPLOYMENT)) { + app.listen(PORT, () => { + console.log(`⚔️ api @ http://localhost:${PORT}`); + }); + + // don't sleep + // remove the setInterval below for personal deployments + setInterval(() => { + console.log("HEALTHCHECK ;)", new Date().toLocaleString()); + https.get("https://api-aniwatch.onrender.com/health"); + }, 540000); +} + +export default app; -- cgit v1.2.3