From f159007449fbcd99c2c4270bc700e04bcffad9cd Mon Sep 17 00:00:00 2001 From: Victor Santos Date: Thu, 23 Oct 2025 21:10:34 -0300 Subject: [PATCH] refactor(northflank): implement custom SecretSyncError for improved error handling in Northflank API calls --- .../secret-sync/northflank/northflank-sync-fns.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/backend/src/services/secret-sync/northflank/northflank-sync-fns.ts b/backend/src/services/secret-sync/northflank/northflank-sync-fns.ts index 42faf77fb..396aa9ac8 100644 --- a/backend/src/services/secret-sync/northflank/northflank-sync-fns.ts +++ b/backend/src/services/secret-sync/northflank/northflank-sync-fns.ts @@ -4,6 +4,7 @@ import { request } from "@app/lib/config/request"; import { matchesSchema } from "@app/services/secret-sync/secret-sync-fns"; import { TSecretMap } from "@app/services/secret-sync/secret-sync-types"; +import { SecretSyncError } from "../secret-sync-errors"; import { TNorthflankSyncWithCredentials } from "./northflank-sync-types"; const NORTHFLANK_API_URL = "https://api.northflank.com"; @@ -78,7 +79,10 @@ const getNorthflankSecrets = async (secretSync: TNorthflankSyncWithCredentials): return variables; } catch (error: unknown) { - throw new Error(`Failed to fetch Northflank secrets. ${buildNorthflankAPIErrorMessage(error)}`); + throw new SecretSyncError({ + error, + message: `Failed to fetch Northflank secrets. ${buildNorthflankAPIErrorMessage(error)}` + }); } }; @@ -109,7 +113,10 @@ const updateNorthflankSecrets = async ( } ); } catch (error: unknown) { - throw new Error(`Failed to update Northflank secrets. ${buildNorthflankAPIErrorMessage(error)}`); + throw new SecretSyncError({ + error, + message: `Failed to update Northflank secrets. ${buildNorthflankAPIErrorMessage(error)}` + }); } };