From 35b42de27e319e79a4a66b96db374bcc66b0f17f Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Wed, 19 Aug 2020 15:53:52 -0400 Subject: [PATCH] correctly handle the previous icon fields value Signed-off-by: Sebastian Malton --- src/migrations/cluster-store/3.6.0-beta.1.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/migrations/cluster-store/3.6.0-beta.1.ts b/src/migrations/cluster-store/3.6.0-beta.1.ts index 17cb0fac2d..4e0072e0ea 100644 --- a/src/migrations/cluster-store/3.6.0-beta.1.ts +++ b/src/migrations/cluster-store/3.6.0-beta.1.ts @@ -13,7 +13,8 @@ import makeSynchronous from "make-synchronous" export default migration({ version: "3.6.0-beta.1", run(store, printLog) { - const kubeConfigBase = path.join((app || remote.app).getPath("userData"), "kubeconfigs") + const userDataPath = (app || remote.app).getPath("userData") + const kubeConfigBase = path.join(userDataPath, "kubeconfigs") const storedClusters: ClusterModel[] = store.get("clusters") || []; if (!storedClusters.length) return; @@ -41,11 +42,13 @@ export default migration({ */ try { if (cluster.preferences.icon) { - const fileData = fse.readFileSync(cluster.preferences.icon); - const { mime } = makeSynchronous(() => fileType.fromBuffer(fileData))(); + printLog(`migrating ${cluster.preferences.icon} for ${cluster.preferences.clusterName}`) + const iconPath = cluster.preferences.icon.replace("store://", "") + const fileData = fse.readFileSync(path.join(userDataPath, iconPath)); + const { mime = "" } = makeSynchronous(() => fileType.fromBuffer(fileData))(); if (!mime) { - throw "unknown icon file type, deleting..."; + printLog(`mime type not detected for ${cluster.preferences.clusterName}'s icon: ${iconPath}`) } cluster.preferences.icon = `data:${mime};base64, ${fileData.toString('base64')}`;