From f0545b87b9808c9b8af7c847893433cffef2f26e Mon Sep 17 00:00:00 2001 From: Adam Majmudar Date: Thu, 2 Nov 2023 12:41:30 -0700 Subject: [PATCH] Save openapi.json to dist/openapi.json --- src/server/index.ts | 6 ++---- src/server/utils/openapi.ts | 13 +++++++++++++ 2 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 src/server/utils/openapi.ts diff --git a/src/server/index.ts b/src/server/index.ts index 423061a3f..0c203e735 100644 --- a/src/server/index.ts +++ b/src/server/index.ts @@ -12,6 +12,7 @@ import { withExpress } from "./middleware/express"; import { withRequestLogs } from "./middleware/logs"; import { withOpenApi } from "./middleware/open-api"; import { withRoutes } from "./routes"; +import { writeOpenApiToFile } from "./utils/openapi"; const __dirname = new URL(".", import.meta.url).pathname; @@ -65,10 +66,7 @@ const main = async () => { }, ); - fs.writeFileSync( - "./dist/openapi.json", - JSON.stringify(server.swagger(), undefined, 2), - ); + writeOpenApiToFile(server); }; main(); diff --git a/src/server/utils/openapi.ts b/src/server/utils/openapi.ts new file mode 100644 index 000000000..6b6e1b06f --- /dev/null +++ b/src/server/utils/openapi.ts @@ -0,0 +1,13 @@ +import { FastifyInstance } from "fastify"; +import fs from "fs"; + +export const writeOpenApiToFile = (server: FastifyInstance) => { + try { + fs.writeFileSync( + "./dist/openapi.json", + JSON.stringify(server.swagger(), undefined, 2), + ); + } catch { + // no-op + } +};