mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Fix build
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
695f660387
commit
3428e72b9a
@ -8,7 +8,6 @@ import type { ApplicationBuilder } from "../../renderer/components/test-utils/ge
|
|||||||
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
||||||
import type { AsyncFnMock } from "@async-fn/jest";
|
import type { AsyncFnMock } from "@async-fn/jest";
|
||||||
import asyncFn from "@async-fn/jest";
|
import asyncFn from "@async-fn/jest";
|
||||||
import execFileInjectable from "../../common/fs/exec-file.injectable";
|
|
||||||
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
||||||
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
||||||
import type { HelmRepo } from "../../common/helm/helm-repo";
|
import type { HelmRepo } from "../../common/helm/helm-repo";
|
||||||
@ -17,6 +16,7 @@ import isPathInjectable from "../../renderer/components/input/validators/is-path
|
|||||||
import showSuccessNotificationInjectable from "../../renderer/components/notifications/show-success-notification.injectable";
|
import showSuccessNotificationInjectable from "../../renderer/components/notifications/show-success-notification.injectable";
|
||||||
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
||||||
import type { AsyncResult } from "../../common/utils/async-result";
|
import type { AsyncResult } from "../../common/utils/async-result";
|
||||||
|
import execFileInjectable from "../../main/child-process/exec-file.injectable";
|
||||||
|
|
||||||
// TODO: Make tooltips free of side effects by making it deterministic
|
// TODO: Make tooltips free of side effects by making it deterministic
|
||||||
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
||||||
|
|||||||
@ -7,7 +7,6 @@ import type { ApplicationBuilder } from "../../renderer/components/test-utils/ge
|
|||||||
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
||||||
import type { AsyncFnMock } from "@async-fn/jest";
|
import type { AsyncFnMock } from "@async-fn/jest";
|
||||||
import asyncFn from "@async-fn/jest";
|
import asyncFn from "@async-fn/jest";
|
||||||
import execFileInjectable from "../../common/fs/exec-file.injectable";
|
|
||||||
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
||||||
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
||||||
import type { HelmRepo } from "../../common/helm/helm-repo";
|
import type { HelmRepo } from "../../common/helm/helm-repo";
|
||||||
@ -15,6 +14,7 @@ import callForPublicHelmRepositoriesInjectable from "../../renderer/components/+
|
|||||||
import showSuccessNotificationInjectable from "../../renderer/components/notifications/show-success-notification.injectable";
|
import showSuccessNotificationInjectable from "../../renderer/components/notifications/show-success-notification.injectable";
|
||||||
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
||||||
import type { AsyncResult } from "../../common/utils/async-result";
|
import type { AsyncResult } from "../../common/utils/async-result";
|
||||||
|
import execFileInjectable from "../../main/child-process/exec-file.injectable";
|
||||||
|
|
||||||
// TODO: Make tooltips free of side effects by making it deterministic
|
// TODO: Make tooltips free of side effects by making it deterministic
|
||||||
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
||||||
|
|||||||
@ -10,12 +10,12 @@ import readYamlFileInjectable from "../../common/fs/read-yaml-file.injectable";
|
|||||||
import type { AsyncFnMock } from "@async-fn/jest";
|
import type { AsyncFnMock } from "@async-fn/jest";
|
||||||
import asyncFn from "@async-fn/jest";
|
import asyncFn from "@async-fn/jest";
|
||||||
import type { HelmRepositoriesFromYaml } from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
import type { HelmRepositoriesFromYaml } from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
||||||
import execFileInjectable from "../../common/fs/exec-file.injectable";
|
|
||||||
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
||||||
import loggerInjectable from "../../common/logger.injectable";
|
import loggerInjectable from "../../common/logger.injectable";
|
||||||
import type { Logger } from "../../common/logger";
|
import type { Logger } from "../../common/logger";
|
||||||
import callForPublicHelmRepositoriesInjectable from "../../renderer/components/+preferences/kubernetes/helm-charts/adding-of-public-helm-repository/public-helm-repositories/call-for-public-helm-repositories.injectable";
|
import callForPublicHelmRepositoriesInjectable from "../../renderer/components/+preferences/kubernetes/helm-charts/adding-of-public-helm-repository/public-helm-repositories/call-for-public-helm-repositories.injectable";
|
||||||
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
import showErrorNotificationInjectable from "../../renderer/components/notifications/show-error-notification.injectable";
|
||||||
|
import execFileInjectable from "../../main/child-process/exec-file.injectable";
|
||||||
|
|
||||||
// TODO: Make tooltips free of side effects by making it deterministic
|
// TODO: Make tooltips free of side effects by making it deterministic
|
||||||
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
||||||
|
|||||||
@ -8,12 +8,12 @@ import type { ApplicationBuilder } from "../../renderer/components/test-utils/ge
|
|||||||
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder";
|
||||||
import type { AsyncFnMock } from "@async-fn/jest";
|
import type { AsyncFnMock } from "@async-fn/jest";
|
||||||
import asyncFn from "@async-fn/jest";
|
import asyncFn from "@async-fn/jest";
|
||||||
import execFileInjectable from "../../common/fs/exec-file.injectable";
|
|
||||||
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
import helmBinaryPathInjectable from "../../main/helm/helm-binary-path.injectable";
|
||||||
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
import getActiveHelmRepositoriesInjectable from "../../main/helm/repositories/get-active-helm-repositories/get-active-helm-repositories.injectable";
|
||||||
import type { HelmRepo } from "../../common/helm/helm-repo";
|
import type { HelmRepo } from "../../common/helm/helm-repo";
|
||||||
import callForPublicHelmRepositoriesInjectable from "../../renderer/components/+preferences/kubernetes/helm-charts/adding-of-public-helm-repository/public-helm-repositories/call-for-public-helm-repositories.injectable";
|
import callForPublicHelmRepositoriesInjectable from "../../renderer/components/+preferences/kubernetes/helm-charts/adding-of-public-helm-repository/public-helm-repositories/call-for-public-helm-repositories.injectable";
|
||||||
import type { AsyncResult } from "../../common/utils/async-result";
|
import type { AsyncResult } from "../../common/utils/async-result";
|
||||||
|
import execFileInjectable from "../../main/child-process/exec-file.injectable";
|
||||||
|
|
||||||
// TODO: Make tooltips free of side effects by making it deterministic
|
// TODO: Make tooltips free of side effects by making it deterministic
|
||||||
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
jest.mock("../../renderer/components/tooltip/withTooltip", () => ({
|
||||||
|
|||||||
@ -1,25 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import { execFile } from "child_process";
|
|
||||||
import { promisify } from "util";
|
|
||||||
|
|
||||||
export type ExecFile = (filePath: string, args: string[]) => Promise<string>;
|
|
||||||
|
|
||||||
const execFileInjectable = getInjectable({
|
|
||||||
id: "exec-file",
|
|
||||||
|
|
||||||
instantiate: (): ExecFile => async (filePath, args) => {
|
|
||||||
const asyncExecFile = promisify(execFile);
|
|
||||||
|
|
||||||
const result = await asyncExecFile(filePath, args);
|
|
||||||
|
|
||||||
return result.stdout;
|
|
||||||
},
|
|
||||||
|
|
||||||
causesSideEffects: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default execFileInjectable;
|
|
||||||
@ -84,7 +84,6 @@ import startKubeConfigSyncInjectable from "./start-main-application/runnables/ku
|
|||||||
import appVersionInjectable from "../common/get-configuration-file-model/app-version/app-version.injectable";
|
import appVersionInjectable from "../common/get-configuration-file-model/app-version/app-version.injectable";
|
||||||
import getRandomIdInjectable from "../common/utils/get-random-id.injectable";
|
import getRandomIdInjectable from "../common/utils/get-random-id.injectable";
|
||||||
import periodicalCheckForUpdatesInjectable from "./application-update/periodical-check-for-updates/periodical-check-for-updates.injectable";
|
import periodicalCheckForUpdatesInjectable from "./application-update/periodical-check-for-updates/periodical-check-for-updates.injectable";
|
||||||
import execFileInjectable from "../common/fs/exec-file.injectable";
|
|
||||||
import normalizedPlatformArchitectureInjectable from "../common/vars/normalized-platform-architecture.injectable";
|
import normalizedPlatformArchitectureInjectable from "../common/vars/normalized-platform-architecture.injectable";
|
||||||
import getHelmChartInjectable from "./helm/helm-service/get-helm-chart.injectable";
|
import getHelmChartInjectable from "./helm/helm-service/get-helm-chart.injectable";
|
||||||
import getHelmChartValuesInjectable from "./helm/helm-service/get-helm-chart-values.injectable";
|
import getHelmChartValuesInjectable from "./helm/helm-service/get-helm-chart-values.injectable";
|
||||||
@ -100,6 +99,7 @@ import updateHelmReleaseInjectable from "./helm/helm-service/update-helm-release
|
|||||||
import waitUntilBundledExtensionsAreLoadedInjectable from "./start-main-application/lens-window/application-window/wait-until-bundled-extensions-are-loaded.injectable";
|
import waitUntilBundledExtensionsAreLoadedInjectable from "./start-main-application/lens-window/application-window/wait-until-bundled-extensions-are-loaded.injectable";
|
||||||
import { registerMobX } from "@ogre-tools/injectable-extension-for-mobx";
|
import { registerMobX } from "@ogre-tools/injectable-extension-for-mobx";
|
||||||
import electronInjectable from "./utils/resolve-system-proxy/electron.injectable";
|
import electronInjectable from "./utils/resolve-system-proxy/electron.injectable";
|
||||||
|
import execFileInjectable from "./child-process/exec-file.injectable";
|
||||||
|
|
||||||
export function getDiForUnitTesting(opts: { doGeneralOverrides?: boolean } = {}) {
|
export function getDiForUnitTesting(opts: { doGeneralOverrides?: boolean } = {}) {
|
||||||
const {
|
const {
|
||||||
|
|||||||
@ -3,10 +3,10 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import execFileInjectable from "../../../common/fs/exec-file.injectable";
|
|
||||||
import helmBinaryPathInjectable from "../helm-binary-path.injectable";
|
import helmBinaryPathInjectable from "../helm-binary-path.injectable";
|
||||||
import type { AsyncResult } from "../../../common/utils/async-result";
|
import type { AsyncResult } from "../../../common/utils/async-result";
|
||||||
import { getErrorMessage } from "../../../common/utils/get-error-message";
|
import { getErrorMessage } from "../../../common/utils/get-error-message";
|
||||||
|
import execFileInjectable from "../../child-process/exec-file.injectable";
|
||||||
|
|
||||||
const execHelmInjectable = getInjectable({
|
const execHelmInjectable = getInjectable({
|
||||||
id: "exec-helm",
|
id: "exec-helm",
|
||||||
@ -17,9 +17,9 @@ const execHelmInjectable = getInjectable({
|
|||||||
|
|
||||||
return async (...args: string[]): Promise<AsyncResult<string>> => {
|
return async (...args: string[]): Promise<AsyncResult<string>> => {
|
||||||
try {
|
try {
|
||||||
const response = await execFile(helmBinaryPath, args);
|
const { stdout } = await execFile(helmBinaryPath, args);
|
||||||
|
|
||||||
return { callWasSuccessful: true, response };
|
return { callWasSuccessful: true, response: stdout };
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
return { callWasSuccessful: false, error: getErrorMessage(error) };
|
return { callWasSuccessful: false, error: getErrorMessage(error) };
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,7 +9,6 @@ import path from "path";
|
|||||||
import directoryForKubeConfigsInjectable from "../../../../common/app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
import directoryForKubeConfigsInjectable from "../../../../common/app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
||||||
import createAuthorizationReviewInjectable from "../../../../common/cluster/authorization-review.injectable";
|
import createAuthorizationReviewInjectable from "../../../../common/cluster/authorization-review.injectable";
|
||||||
import createListNamespacesInjectable from "../../../../common/cluster/list-namespaces.injectable";
|
import createListNamespacesInjectable from "../../../../common/cluster/list-namespaces.injectable";
|
||||||
import readFileSyncInjectable from "../../../../common/fs/read-file-sync.injectable";
|
|
||||||
import type { RemoveDir } from "../../../../common/fs/remove.injectable";
|
import type { RemoveDir } from "../../../../common/fs/remove.injectable";
|
||||||
import removeDirInjectable from "../../../../common/fs/remove.injectable";
|
import removeDirInjectable from "../../../../common/fs/remove.injectable";
|
||||||
import tempDirInjectable from "../../../../common/fs/temp-dir.injectable";
|
import tempDirInjectable from "../../../../common/fs/temp-dir.injectable";
|
||||||
@ -59,26 +58,6 @@ describe("ResourceApplier", () => {
|
|||||||
di.override(removeDirInjectable, () => removeDir = jest.fn());
|
di.override(removeDirInjectable, () => removeDir = jest.fn());
|
||||||
di.override(tempDirInjectable, () => jest.fn().mockImplementation(() => "some/temp/dir"));
|
di.override(tempDirInjectable, () => jest.fn().mockImplementation(() => "some/temp/dir"));
|
||||||
di.override(tempFileInjectable, () => jest.fn().mockImplementation(() => "some/temp/file"));
|
di.override(tempFileInjectable, () => jest.fn().mockImplementation(() => "some/temp/file"));
|
||||||
di.override(readFileSyncInjectable, () => jest.fn().mockImplementation(() => {
|
|
||||||
return JSON.stringify({
|
|
||||||
clusters: [{
|
|
||||||
name: "some-cluster",
|
|
||||||
cluster: {
|
|
||||||
server: "some-server-url",
|
|
||||||
},
|
|
||||||
}],
|
|
||||||
users: [{
|
|
||||||
name: "some-user",
|
|
||||||
}],
|
|
||||||
contexts: [{
|
|
||||||
name: "some-context",
|
|
||||||
context: {
|
|
||||||
user: "some-user",
|
|
||||||
cluster: "some-cluster",
|
|
||||||
},
|
|
||||||
}],
|
|
||||||
});
|
|
||||||
}));
|
|
||||||
|
|
||||||
const createK8sResourceApplier = di.inject(createK8sResourceApplierInjectable);
|
const createK8sResourceApplier = di.inject(createK8sResourceApplierInjectable);
|
||||||
const createCluster = di.inject(createClusterInjectable);
|
const createCluster = di.inject(createClusterInjectable);
|
||||||
@ -87,6 +66,8 @@ describe("ResourceApplier", () => {
|
|||||||
contextName: "some-context",
|
contextName: "some-context",
|
||||||
id: "some-id",
|
id: "some-id",
|
||||||
kubeConfigPath: "some/path/config",
|
kubeConfigPath: "some/path/config",
|
||||||
|
}, {
|
||||||
|
clusterServerUrl: "some-server-url",
|
||||||
}));
|
}));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user