From 8e90c4ace1370fca71dca938fc88d2ca5ae1eb4e Mon Sep 17 00:00:00 2001 From: Nicolas Meienberger Date: Fri, 28 Nov 2025 08:20:06 +0100 Subject: [PATCH] refactor: native repository healthcheck --- app/server/modules/repositories/repositories.service.ts | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/server/modules/repositories/repositories.service.ts b/app/server/modules/repositories/repositories.service.ts index cd2d3ce..352af7c 100644 --- a/app/server/modules/repositories/repositories.service.ts +++ b/app/server/modules/repositories/repositories.service.ts @@ -249,21 +249,18 @@ const checkHealth = async (repositoryId: string) => { throw new NotFoundError("Repository not found"); } - const { error, status } = await restic - .snapshots(repository.config) - .then(() => ({ error: null, status: "healthy" as const })) - .catch((error) => ({ error: toMessage(error), status: "error" as const })); + const { hasErrors, error } = await restic.check(repository.config, { readData: true }); await db .update(repositoriesTable) .set({ - status, + status: hasErrors ? "error" : "healthy", lastChecked: Date.now(), lastError: error, }) .where(eq(repositoriesTable.id, repository.id)); - return { status, lastError: error }; + return { lastError: error }; }; const doctorRepository = async (name: string) => {