From ef48c0150b60228674685542433d92dbd447bad8 Mon Sep 17 00:00:00 2001 From: bkellam Date: Mon, 16 Dec 2024 20:10:11 -0800 Subject: [PATCH 1/2] fix --- packages/backend/src/main.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/backend/src/main.ts b/packages/backend/src/main.ts index 2942b003..8cb744b2 100644 --- a/packages/backend/src/main.ts +++ b/packages/backend/src/main.ts @@ -73,10 +73,10 @@ export const deleteStaleRepository = async (repo: Repository, db: Database, ctx: logger.info(`Deleting stale repository ${repo.id}:`); // Delete the checked out git repository (if applicable) - if (repo.vcs === "git") { + if (repo.vcs === "git" && existsSync(repo.path)) { logger.info(`\tDeleting git directory ${repo.path}...`); await rm(repo.path, { - recursive: true + recursive: true, }); } @@ -116,6 +116,10 @@ export const deleteStaleRepository = async (repo: Repository, db: Database, ctx: }); await Promise.all(indexFiles.map((file) => { + if (!existsSync(file)) { + return; + } + logger.info(`\tDeleting index file ${file}...`); return rm(file); })); From 39e1e4b14f103439d5328a715aba9dc3c87c94e9 Mon Sep 17 00:00:00 2001 From: bkellam Date: Mon, 16 Dec 2024 20:15:27 -0800 Subject: [PATCH 2/2] fix test --- packages/backend/src/main.test.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/backend/src/main.test.ts b/packages/backend/src/main.test.ts index 312f535a..3088a239 100644 --- a/packages/backend/src/main.test.ts +++ b/packages/backend/src/main.test.ts @@ -15,6 +15,10 @@ vi.mock('glob', () => ({ glob: vi.fn().mockReturnValue(['fake_index.zoekt']), })); +vi.mock('fs', () => ({ + existsSync: vi.fn().mockReturnValue(true), +})); + const createMockContext = (rootPath: string = '/app') => { return { configPath: path.join(rootPath, 'config.json'), @@ -159,7 +163,7 @@ test('deleteStaleRepository can delete a git repository', async () => { await deleteStaleRepository(repo, db, ctx); - expect(db.data.repos['github.com/sourcebot-dev/sourcebot']).toBeUndefined();; + expect(db.data.repos['github.com/sourcebot-dev/sourcebot']).toBeUndefined(); expect(rm).toHaveBeenCalledWith(`${ctx.reposPath}/github.com/sourcebot-dev/sourcebot`, { recursive: true, });