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

Merge branch 'master' into show-extension-preferences-in-separate-page

This commit is contained in:
Alex Andreev 2022-06-10 10:51:08 +03:00
commit 5023c7e47f
5 changed files with 41 additions and 27 deletions

View File

@ -49,7 +49,8 @@
"k8sProxyVersion": "0.2.1", "k8sProxyVersion": "0.2.1",
"bundledKubectlVersion": "1.23.3", "bundledKubectlVersion": "1.23.3",
"bundledHelmVersion": "3.7.2", "bundledHelmVersion": "3.7.2",
"sentryDsn": "" "sentryDsn": "",
"contentSecurityPolicy": "script-src 'unsafe-eval' 'self'; frame-src http://*.localhost:*/; img-src *"
}, },
"engines": { "engines": {
"node": ">=16 <17" "node": ">=16 <17"
@ -207,10 +208,10 @@
"@hapi/subtext": "^7.0.3", "@hapi/subtext": "^7.0.3",
"@kubernetes/client-node": "^0.16.3", "@kubernetes/client-node": "^0.16.3",
"@material-ui/styles": "^4.11.5", "@material-ui/styles": "^4.11.5",
"@ogre-tools/injectable": "7.0.0", "@ogre-tools/injectable": "7.1.0",
"@ogre-tools/injectable-react": "7.0.0", "@ogre-tools/injectable-react": "7.1.0",
"@ogre-tools/fp": "7.0.0", "@ogre-tools/fp": "7.1.0",
"@ogre-tools/injectable-extension-for-auto-registration": "7.0.0", "@ogre-tools/injectable-extension-for-auto-registration": "7.1.0",
"@sentry/electron": "^3.0.7", "@sentry/electron": "^3.0.7",
"@sentry/integrations": "^6.19.3", "@sentry/integrations": "^6.19.3",
"@types/circular-dependency-plugin": "5.0.5", "@types/circular-dependency-plugin": "5.0.5",

View File

@ -10,7 +10,14 @@ import type { DerivedKubeApiOptions, IgnoredKubeApiOptions } from "../kube-api";
import { KubeApi } from "../kube-api"; import { KubeApi } from "../kube-api";
export class ClusterApi extends KubeApi<Cluster> { export class ClusterApi extends KubeApi<Cluster> {
/**
* @deprecated This field is legacy and never used.
*/
static kind = "Cluster"; static kind = "Cluster";
/**
* @deprecated This field is legacy and never used.
*/
static namespaced = true; static namespaced = true;
constructor(opts: DerivedKubeApiOptions & IgnoredKubeApiOptions = {}) { constructor(opts: DerivedKubeApiOptions & IgnoredKubeApiOptions = {}) {
@ -104,6 +111,7 @@ export interface Cluster {
export class Cluster extends KubeObject { export class Cluster extends KubeObject {
static kind = "Cluster"; static kind = "Cluster";
static apiBase = "/apis/cluster.k8s.io/v1alpha1/clusters"; static apiBase = "/apis/cluster.k8s.io/v1alpha1/clusters";
static namespaced = true;
getStatus() { getStatus() {
if (this.metadata.deletionTimestamp) return ClusterStatus.REMOVING; if (this.metadata.deletionTimestamp) return ClusterStatus.REMOVING;

View File

@ -143,3 +143,4 @@ export const appSemVer = new SemVer(packageInfo.version);
export const docsUrl = "https://docs.k8slens.dev/main/" as string; export const docsUrl = "https://docs.k8slens.dev/main/" as string;
export const sentryDsn = packageInfo.config?.sentryDsn ?? ""; export const sentryDsn = packageInfo.config?.sentryDsn ?? "";
export const contentSecurityPolicy = packageInfo.config?.contentSecurityPolicy ?? "";

View File

@ -7,7 +7,7 @@ import net from "net";
import type http from "http"; import type http from "http";
import spdy from "spdy"; import spdy from "spdy";
import type httpProxy from "http-proxy"; import type httpProxy from "http-proxy";
import { apiPrefix, apiKubePrefix } from "../../common/vars"; import { apiPrefix, apiKubePrefix, contentSecurityPolicy } from "../../common/vars";
import type { Router } from "../router/router"; import type { Router } from "../router/router";
import type { ClusterContextHandler } from "../context-handler/context-handler"; import type { ClusterContextHandler } from "../context-handler/context-handler";
import logger from "../logger"; import logger from "../logger";
@ -239,6 +239,10 @@ export class LensProxy {
} }
} }
if (contentSecurityPolicy) {
res.setHeader("Content-Security-Policy", contentSecurityPolicy);
}
this.dependencies.router.route(cluster, req, res); this.dependencies.router.route(cluster, req, res);
} }
} }

View File

@ -1102,37 +1102,37 @@
"@nodelib/fs.scandir" "2.1.5" "@nodelib/fs.scandir" "2.1.5"
fastq "^1.6.0" fastq "^1.6.0"
"@ogre-tools/fp@7.0.0", "@ogre-tools/fp@^7.0.0": "@ogre-tools/fp@7.1.0", "@ogre-tools/fp@^7.1.0":
version "7.0.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/@ogre-tools/fp/-/fp-7.0.0.tgz#55cd32cc2fcf0505fa0d3ebfd45eb0a9bbb9554c" resolved "https://registry.yarnpkg.com/@ogre-tools/fp/-/fp-7.1.0.tgz#63bdd23e82d4d0f3cfffbf575017e4dac893f590"
integrity sha512-vmd+Ctr9pTSulWWiYaJT4Ca2vkq1MVQvwZ42hJq+LK/tgC4vVMf6G13EMHwhRlhPyrro1/5NeN2kf6SlhgrVOg== integrity sha512-lhXreCXr1mlyvNf+YXvqBcIvL2ZKswYJXK1hx2ieeQLmgyvDs6xGio6h+6bHf1kJhvM55PfBATAJ3DyyiUfwiA==
dependencies: dependencies:
lodash "^4.17.21" lodash "^4.17.21"
"@ogre-tools/injectable-extension-for-auto-registration@7.0.0": "@ogre-tools/injectable-extension-for-auto-registration@7.1.0":
version "7.0.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-auto-registration/-/injectable-extension-for-auto-registration-7.0.0.tgz#2144417dd3b3c10afe232661e11d7d0e292a3e6b" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-auto-registration/-/injectable-extension-for-auto-registration-7.1.0.tgz#eb4aabee04fff1c4e353e4b5e805639e5e8923d5"
integrity sha512-11RVfzMIBIS/29EUnrhRl/WhwWTYi2cJCAEyh2NnPBV7m51wS40kE/ZjDNn9s37Mfsxc8wNX0aUKwMphXFosVw== integrity sha512-xEnXF2iAxYOCj46HymDIjO85zsunONmMD8CThks46pyUD7kTOaf7c9tClEUFdXQTmCAfU3UFxcAxDjyJynoSTg==
dependencies: dependencies:
"@ogre-tools/fp" "^7.0.0" "@ogre-tools/fp" "^7.1.0"
"@ogre-tools/injectable" "^7.0.0" "@ogre-tools/injectable" "^7.1.0"
lodash "^4.17.21" lodash "^4.17.21"
"@ogre-tools/injectable-react@7.0.0": "@ogre-tools/injectable-react@7.1.0":
version "7.0.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-react/-/injectable-react-7.0.0.tgz#09c45fbf9a904673a6a0b450cb9a6a7c1110ab14" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-react/-/injectable-react-7.1.0.tgz#afb60951e7e22b59921eb5ce5d04e3be93fe119e"
integrity sha512-L/NlM4nzIg0FOfH/5T3wYBsPUxALkpt+HaZSOcgzCM9fJnaSgYv/FwdAqshg+nA3KngPDYIMkAUdS+j3uq1yEA== integrity sha512-JDTZR+1IhFUAPjlzP7IwMRysFBVjpQke4Y/7Ddy7MhOF+WtfFx8pOnuWFWKQRlU2FS4PsMpCG09Jgy09j+Qa8Q==
dependencies: dependencies:
"@ogre-tools/fp" "^7.0.0" "@ogre-tools/fp" "^7.1.0"
"@ogre-tools/injectable" "^7.0.0" "@ogre-tools/injectable" "^7.1.0"
lodash "^4.17.21" lodash "^4.17.21"
"@ogre-tools/injectable@7.0.0", "@ogre-tools/injectable@^7.0.0": "@ogre-tools/injectable@7.1.0", "@ogre-tools/injectable@^7.1.0":
version "7.0.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable/-/injectable-7.0.0.tgz#25e6168ba3781f6b562bfbb06d1d54c976e9c94d" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable/-/injectable-7.1.0.tgz#4137d630720245e9bc8635a0f62888878f711da5"
integrity sha512-yfdNUU/q7Oy+bXnQN1lRD2wzt81xqGpf37C4iWfarZ+5GF4sjGi9w4Wuxe1s24rl2rpHZtcQ0j9bEEX51ifQHA== integrity sha512-EN82trTh80TuSE0Gr1Gk4oC/Mj3Od//kWH2r+0Z3Np554e4zOgW6lyEOQlxaGIm77taGSvHq9B9cO7lI9hJonQ==
dependencies: dependencies:
"@ogre-tools/fp" "^7.0.0" "@ogre-tools/fp" "^7.1.0"
lodash "^4.17.21" lodash "^4.17.21"
"@panva/asn1.js@^1.0.0": "@panva/asn1.js@^1.0.0":