Files
stash/packages/server/src/endpoints/system/system.ts
Morten Olsen f9494c88e2 update
2025-12-10 09:11:03 +01:00

33 lines
842 B
TypeScript

import type { FastifyPluginAsyncZod } from 'fastify-type-provider-zod';
import { z } from 'zod';
import { DatabaseService } from '#root/services/database/database.js';
const systemEndpoints: FastifyPluginAsyncZod = async (instance) => {
instance.route({
method: 'GET',
url: '/ready',
schema: {
tags: ['system'],
operationId: 'GET/system/ready',
summary: 'Get system ready state',
response: {
200: z.object({
status: z.literal('ok'),
}),
},
},
handler: async (_, reply) => {
const { services } = instance;
const databaseService = services.get(DatabaseService);
const db = await databaseService.getInstance();
await db.raw('SELECT 1=1');
await reply.send({
status: 'ok',
});
},
});
};
export { systemEndpoints };