diff options
Diffstat (limited to 'packages/open-api')
| -rw-r--r-- | packages/open-api/index.ts | 18 | ||||
| -rw-r--r-- | packages/open-api/package.json | 1 |
2 files changed, 18 insertions, 1 deletions
diff --git a/packages/open-api/index.ts b/packages/open-api/index.ts index 06fbc913..057a823f 100644 --- a/packages/open-api/index.ts +++ b/packages/open-api/index.ts @@ -1,4 +1,5 @@ import * as fs from "fs"; +import * as process from "process"; import { OpenApiGeneratorV3, OpenAPIRegistry, @@ -54,4 +55,19 @@ function writeDocumentation() { }); } -writeDocumentation(); +function checkDocumentation() { + const docs = getOpenApiDocumentation(); + const fileContent = JSON.stringify(docs, null, 2); + const oldContent = fs.readFileSync(`./karakeep-openapi-spec.json`, { + encoding: "utf-8", + }); + if (oldContent !== fileContent) { + process.exit(1); + } +} + +if (process.argv[2] === "check") { + checkDocumentation(); +} else { + writeDocumentation(); +} diff --git a/packages/open-api/package.json b/packages/open-api/package.json index d88543a9..a2a20ef7 100644 --- a/packages/open-api/package.json +++ b/packages/open-api/package.json @@ -16,6 +16,7 @@ }, "scripts": { "typecheck": "tsc --noEmit", + "check": "tsx index.ts check", "generate": "tsx index.ts", "format": "prettier . --ignore-path ../../.prettierignore", "format:fix": "prettier . --write --ignore-path ../../.prettierignore", |
