mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
fix: wait lensProxy.listen() to obtain lensProxy.port for webpack-dev-server
Signed-off-by: Roman <ixrock@gmail.com>
This commit is contained in:
parent
2ef9861d10
commit
29c75e18c6
@ -10,7 +10,7 @@ import * as Mobx from "mobx";
|
|||||||
import * as LensExtensionsCommonApi from "../extensions/common-api";
|
import * as LensExtensionsCommonApi from "../extensions/common-api";
|
||||||
import * as LensExtensionsMainApi from "../extensions/main-api";
|
import * as LensExtensionsMainApi from "../extensions/main-api";
|
||||||
import { app, autoUpdater, dialog, powerMonitor } from "electron";
|
import { app, autoUpdater, dialog, powerMonitor } from "electron";
|
||||||
import { appName, isIntegrationTesting, isMac, isWindows, productName } from "../common/vars";
|
import { appName, isIntegrationTesting, isMac, isWindows, productName, isDevelopment } from "../common/vars";
|
||||||
import { LensProxy } from "./lens-proxy";
|
import { LensProxy } from "./lens-proxy";
|
||||||
import { WindowManager } from "./window-manager";
|
import { WindowManager } from "./window-manager";
|
||||||
import { ClusterManager } from "./cluster-manager";
|
import { ClusterManager } from "./cluster-manager";
|
||||||
@ -177,7 +177,6 @@ di.runSetups().then(() => {
|
|||||||
kubeApiRequest,
|
kubeApiRequest,
|
||||||
shellApiRequest,
|
shellApiRequest,
|
||||||
});
|
});
|
||||||
const devServer = createDevServer(lensProxy.port);
|
|
||||||
|
|
||||||
ClusterManager.createInstance().init();
|
ClusterManager.createInstance().init();
|
||||||
|
|
||||||
@ -185,10 +184,7 @@ di.runSetups().then(() => {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
logger.info("🔌 Starting LensProxy");
|
logger.info("🔌 Starting LensProxy");
|
||||||
await Promise.all([
|
await lensProxy.listen(); // lensProxy.port available
|
||||||
lensProxy.listen(),
|
|
||||||
devServer?.start(),
|
|
||||||
]);
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
dialog.showErrorBox("Lens Error", `Could not start proxy: ${error?.message || "unknown error"}`);
|
dialog.showErrorBox("Lens Error", `Could not start proxy: ${error?.message || "unknown error"}`);
|
||||||
|
|
||||||
@ -239,8 +235,11 @@ di.runSetups().then(() => {
|
|||||||
|
|
||||||
logger.info("🖥️ Starting WindowManager");
|
logger.info("🖥️ Starting WindowManager");
|
||||||
const windowManager = WindowManager.createInstance();
|
const windowManager = WindowManager.createInstance();
|
||||||
if (devServer) {
|
|
||||||
// override main content view url to local webpack-dev-server to support HMR / live-reload
|
// Override main content view url to local webpack-dev-server to support HMR / live-reload
|
||||||
|
if (isDevelopment) {
|
||||||
|
const devServer = createDevServer(lensProxy.port);
|
||||||
|
await devServer.start();
|
||||||
windowManager.mainContentUrl = `http://localhost:${devServer.options.port}`;
|
windowManager.mainContentUrl = `http://localhost:${devServer.options.port}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
import Webpack from "webpack";
|
import Webpack from "webpack";
|
||||||
import WebpackDevServer from "webpack-dev-server";
|
import WebpackDevServer from "webpack-dev-server";
|
||||||
import { webpackLensRenderer } from "./webpack.renderer";
|
import { webpackLensRenderer } from "./webpack.renderer";
|
||||||
import { buildDir, isDevelopment, webpackDevServerPort } from "./src/common/vars";
|
import { buildDir, webpackDevServerPort } from "./src/common/vars";
|
||||||
import logger from "./src/common/logger";
|
import logger from "./src/common/logger";
|
||||||
|
|
||||||
export interface DevServer extends WebpackDevServer {
|
export interface DevServer extends WebpackDevServer {
|
||||||
@ -18,11 +18,7 @@ export interface DevServer extends WebpackDevServer {
|
|||||||
* @url https://webpack.js.org/configuration/dev-server/
|
* @url https://webpack.js.org/configuration/dev-server/
|
||||||
* @url https://github.com/chimurai/http-proxy-middleware
|
* @url https://github.com/chimurai/http-proxy-middleware
|
||||||
*/
|
*/
|
||||||
export function createDevServer(lensProxyPort: number): DevServer | undefined {
|
export function createDevServer(lensProxyPort: number): DevServer {
|
||||||
if (!isDevelopment) {
|
|
||||||
return undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
const config = webpackLensRenderer();
|
const config = webpackLensRenderer();
|
||||||
const compiler = Webpack(config);
|
const compiler = Webpack(config);
|
||||||
|
|
||||||
|
|||||||
@ -184,6 +184,4 @@ export function cssModulesWebpackRule(
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export default [
|
export default webpackLensRenderer;
|
||||||
webpackLensRenderer,
|
|
||||||
];
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user