diff --git a/src/renderer/components/dock/pod-logs.store.ts b/src/renderer/components/dock/pod-logs.store.ts index d21a6243de..296a8e8ad8 100644 --- a/src/renderer/components/dock/pod-logs.store.ts +++ b/src/renderer/components/dock/pod-logs.store.ts @@ -5,7 +5,7 @@ import { dockStore, IDockTab, TabKind } from "./dock.store"; export interface IPodLogsData { pod: Pod; - container?: IPodContainer; + container: IPodContainer; } @autobind() @@ -15,9 +15,18 @@ export class PodLogsStore extends DockTabStore { export const podLogsStore = new PodLogsStore(); export function createPodLogsTab(data: IPodLogsData, tabParams: Partial = {}) { - const tab = dockStore.createTab({ + const podId = data.pod.getId(); + let tab = dockStore.getTabById(podId); + if (tab) { + dockStore.open(); + dockStore.selectTab(tab.id); + return; + } + // If no existent tab found + tab = dockStore.createTab({ + id: podId, kind: TabKind.POD_LOGS, - title: "Logs", + title: `Logs: ${data.pod.getName()}`, ...tabParams }); podLogsStore.setData(tab.id, data);