diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 751163d15..4827b87d5 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -1,10 +1,28 @@ import BuildContext from "./context"; import { join } from "path"; import { execSync } from "child_process"; +import { mkdirSync } from "fs"; + +interface BuildInfo { + specPath: string; + outDir: string; +} + +const buildInfos: BuildInfo[] = [ + { + specPath: join(__dirname, "../../server/src/assets/api-openapi.yaml"), + outDir: "api/internal" + }, + { + specPath: join(__dirname, "../../server/src/assets/etapi.openapi.yaml"), + outDir: "api/etapi" + } +]; export default function buildSwagger({ baseDir }: BuildContext) { - const targetDir = join(baseDir, "api"); - const specPath = join(__dirname, "../../server/src/assets/api-openapi.yaml"); - - execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/internal-api.html`, { stdio: "inherit" }); + for (const { specPath, outDir } of buildInfos) { + const targetDir = join(baseDir, outDir); + mkdirSync(outDir, { recursive: true }); + execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/index.html`, { stdio: "inherit" }); + } }