1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Fix pod shell error if no access to nodes (#275)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen 2020-04-19 17:48:52 +03:00 committed by GitHub
parent ac552087d5
commit 07e2653f80
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 2 deletions

View File

@ -411,6 +411,13 @@ export class Pod extends WorkloadKubeObject {
getNodeName() { getNodeName() {
return this.spec?.nodeName return this.spec?.nodeName
} }
getSelectedNodeOs() {
if (!this.spec.nodeSelector) return
if (!this.spec.nodeSelector["kubernetes.io/os"]) return
return this.spec.nodeSelector["kubernetes.io/os"]
}
} }
export const podsApi = new PodsApi({ export const podsApi = new PodsApi({

View File

@ -21,9 +21,8 @@ export class PodMenu extends React.Component<Props> {
hideDetails(); hideDetails();
const { object: pod } = this.props const { object: pod } = this.props
const containerParam = container ? `-c ${container}` : "" const containerParam = container ? `-c ${container}` : ""
const node = await nodesApi.get({name: pod.getNodeName()})
let command = `kubectl exec -i -t -n ${pod.getNs()} ${pod.getName()} ${containerParam} "--"` let command = `kubectl exec -i -t -n ${pod.getNs()} ${pod.getName()} ${containerParam} "--"`
if (node.getOperatingSystem() == "windows") { if (pod.getSelectedNodeOs() === "windows") {
command = `${command} powershell` command = `${command} powershell`
} else { } else {
command = `${command} sh -c "clear; (bash || ash || sh)"` command = `${command} sh -c "clear; (bash || ash || sh)"`