Skip to content

Commit 1b1a502

Browse files
committed
fix: remove merged logs functionality to avoid UI errors
1 parent e1938f4 commit 1b1a502

7 files changed

Lines changed: 7 additions & 169 deletions

File tree

pkg/devspace/server/logs.go

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -50,57 +50,6 @@ func (ws *wsStream) Read(p []byte) (int, error) {
5050
return len(message), nil
5151
}
5252

53-
func (h *handler) logsMultiple(w http.ResponseWriter, r *http.Request) {
54-
/*// Kube Context
55-
kubeContext := h.defaultContext
56-
context, ok := r.URL.Query()["context"]
57-
if ok && len(context) == 1 && context[0] != "" {
58-
kubeContext = context[0]
59-
}
60-
61-
// Namespace
62-
kubeNamespace := h.defaultNamespace
63-
namespace, ok := r.URL.Query()["namespace"]
64-
if ok && len(namespace) == 1 && namespace[0] != "" {
65-
kubeNamespace = namespace[0]
66-
}
67-
68-
// Create kubectl client
69-
client, err := h.getClientFromCache(kubeContext, kubeNamespace)
70-
if err != nil {
71-
h.log.Errorf("Error in %s: %v", r.URL.String(), err)
72-
http.Error(w, err.Error(), http.StatusInternalServerError)
73-
return
74-
}
75-
76-
ws, err := upgrader.Upgrade(w, r, nil)
77-
if err != nil {
78-
h.log.Errorf("Error upgrading connection in %s: %v", r.URL.String(), err)
79-
http.Error(w, err.Error(), http.StatusInternalServerError)
80-
return
81-
}
82-
83-
defer ws.Close()
84-
85-
writer := &wsStream{WebSocket: ws}
86-
manager, err := logs.NewLogManager(client, h.config, h.dependencies, make(chan error), log.NewStreamLogger(writer, logrus.InfoLevel))
87-
if err != nil {
88-
h.log.Errorf("Error in %s: %v", r.URL.String(), err)
89-
websocketError(ws, err)
90-
return
91-
}
92-
93-
err = manager.Start()
94-
if err != nil {
95-
h.log.Errorf("Error in %s: %v", r.URL.String(), err)
96-
websocketError(ws, err)
97-
return
98-
}
99-
100-
_ = ws.SetWriteDeadline(time.Now().Add(time.Second * 5))
101-
_ = ws.WriteMessage(websocket.CloseMessage, websocket.FormatCloseMessage(websocket.CloseNormalClosure, ""))*/
102-
}
103-
10453
func (h *handler) logs(w http.ResponseWriter, r *http.Request) {
10554
// Kube Context
10655
kubeContext := h.ctx.KubeClient.CurrentContext()

pkg/devspace/server/server.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,17 @@ package server
33
import (
44
"encoding/json"
55
"fmt"
6-
"github.com/loft-sh/devspace/helper/util/port"
7-
"github.com/loft-sh/devspace/pkg/devspace/config/localcache"
8-
devspacecontext "github.com/loft-sh/devspace/pkg/devspace/context"
9-
"github.com/loft-sh/devspace/pkg/devspace/pipeline/types"
106
"net/http"
117
"path/filepath"
128
"strconv"
139
"strings"
1410
"sync"
1511

12+
"github.com/loft-sh/devspace/helper/util/port"
13+
"github.com/loft-sh/devspace/pkg/devspace/config/localcache"
14+
devspacecontext "github.com/loft-sh/devspace/pkg/devspace/context"
15+
"github.com/loft-sh/devspace/pkg/devspace/pipeline/types"
16+
1617
"github.com/loft-sh/devspace/pkg/devspace/config/versions/latest"
1718
"github.com/loft-sh/devspace/pkg/devspace/kubectl"
1819
"github.com/loft-sh/devspace/pkg/devspace/kubectl/portforward"
@@ -159,7 +160,6 @@ func newHandler(ctx *devspacecontext.Context, path string, pipeline types.Pipeli
159160
handler.mux.HandleFunc("/api/enter", handler.enter)
160161
handler.mux.HandleFunc("/api/resize", handler.resize)
161162
handler.mux.HandleFunc("/api/logs", handler.logs)
162-
handler.mux.HandleFunc("/api/logs-multiple", handler.logsMultiple)
163163
return handler, nil
164164
}
165165

ui/src/components/views/Logs/LogsList/LogsList.tsx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ import React from 'react';
22
import { V1PodList, V1ServiceList, V1Pod } from '@kubernetes/client-node';
33
import Pod from '../Pod/Pod';
44
import withDevSpaceConfig, { DevSpaceConfigContext } from 'contexts/withDevSpaceConfig/withDevSpaceConfig';
5-
import LogsMultiple from '../LogsMultiple/LogsMultiple';
6-
import { getDeployedImageNames } from 'lib/utils';
75
import styles from './LogsList.module.scss';
86
import inputStyles from '../../../basic/Input/Input.module.scss';
97
import { TerminalCacheInterface } from '../TerminalCache/TerminalCache';
@@ -90,12 +88,6 @@ const LogsList = (props: Props) => {
9088
onChange={event => setSearchString(event.target.value)}
9189
/>
9290
</form>
93-
94-
{getDeployedImageNames(props.devSpaceConfig).length > 0 &&
95-
props.devSpaceConfig.kubeNamespace === props.devSpaceConfig.originalKubeNamespace &&
96-
props.devSpaceConfig.kubeContext === props.devSpaceConfig.originalKubeContext && (
97-
<LogsMultiple selected={props.selected} onSelect={props.onSelect} />
98-
)}
9991
{renderPods(props, searchString)}
10092
</div>
10193
</div>

ui/src/components/views/Logs/LogsMultiple/LogsMultiple.module.scss

Lines changed: 0 additions & 19 deletions
This file was deleted.

ui/src/components/views/Logs/LogsMultiple/LogsMultiple.tsx

Lines changed: 0 additions & 30 deletions
This file was deleted.

ui/src/contexts/withDevSpaceConfig/withDevSpaceConfig.tsx

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export interface DevSpaceConfig {
2323
changeKubeContext: (newContext: NewContext) => void;
2424

2525
config: Config;
26-
generatedConfig: GeneratedConfig;
26+
generatedConfig: LocalCache;
2727

2828
profile: string;
2929
kubeNamespace: string;
@@ -56,42 +56,10 @@ interface ImageConfig {
5656
image: string;
5757
}
5858

59-
interface GeneratedConfig {
59+
export interface LocalCache {
6060
vars: { [key: string]: string };
61-
profiles: { [key: string]: GeneratedCacheConfig };
6261
}
6362

64-
interface GeneratedCacheConfig {
65-
deployments: { [key: string]: GeneratedDeploymentCache };
66-
images: { [key: string]: GeneratedImageCache };
67-
dependencies: { [key: string]: string };
68-
lastContext: GeneratedLastContextConfig;
69-
}
70-
71-
interface GeneratedImageCache {
72-
imageConfigHash: string;
73-
dockerfileHash: string;
74-
contextHash: string;
75-
entrypointHash: string;
76-
77-
customFilesHash: string;
78-
79-
imageName: string;
80-
tag: string;
81-
}
82-
83-
interface GeneratedDeploymentCache {
84-
deploymentConfigHash: string;
85-
86-
helmOverridesHash: string;
87-
helmChartHash: string;
88-
kubectlManifestsHash: string;
89-
}
90-
91-
interface GeneratedLastContextConfig {
92-
namespace: string;
93-
context: string;
94-
}
9563

9664
export const DevSpaceConfigContextProvider = reactDevSpaceConfigContext.Provider;
9765

ui/src/lib/utils.tsx

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,7 @@
11
import React from 'react';
2-
import { DevSpaceConfig } from 'contexts/withDevSpaceConfig/withDevSpaceConfig';
32
import { V1Pod, V1ContainerStatus, Config } from '@kubernetes/client-node';
43
import yaml from 'js-yaml';
54

6-
export const getDeployedImageNames = (devSpaceConfig: DevSpaceConfig) => {
7-
const imageSelector = [];
8-
if (devSpaceConfig.config && devSpaceConfig.generatedConfig) {
9-
const activeCache = devSpaceConfig.generatedConfig.profiles[devSpaceConfig.profile];
10-
11-
for (const generatedImageName in activeCache.images) {
12-
if (
13-
activeCache.images[generatedImageName].imageName &&
14-
devSpaceConfig.config.images &&
15-
devSpaceConfig.config.images[generatedImageName]
16-
) {
17-
imageSelector.push(
18-
activeCache.images[generatedImageName].imageName + ':' + activeCache.images[generatedImageName].tag
19-
);
20-
}
21-
}
22-
}
23-
24-
return imageSelector;
25-
};
26-
275
export const formatError = (error: any): any => {
286
if (!error) {
297
return undefined;

0 commit comments

Comments
 (0)