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

Bump ogre-tools and adapt to breaking changes (#6481)

Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>

Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>

Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
This commit is contained in:
Iku-turso 2022-10-27 12:06:03 +03:00 committed by GitHub
parent 2403e6d0cb
commit 646e953d47
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 133 additions and 108 deletions

View File

@ -218,11 +218,11 @@
"@hapi/subtext": "^7.0.4", "@hapi/subtext": "^7.0.4",
"@kubernetes/client-node": "^0.17.1", "@kubernetes/client-node": "^0.17.1",
"@material-ui/styles": "^4.11.5", "@material-ui/styles": "^4.11.5",
"@ogre-tools/fp": "^11.0.0", "@ogre-tools/fp": "^12.0.1",
"@ogre-tools/injectable": "^11.0.0", "@ogre-tools/injectable": "^12.0.1",
"@ogre-tools/injectable-extension-for-auto-registration": "^11.0.0", "@ogre-tools/injectable-extension-for-auto-registration": "^12.0.1",
"@ogre-tools/injectable-extension-for-mobx": "^11.0.0", "@ogre-tools/injectable-extension-for-mobx": "^12.0.1",
"@ogre-tools/injectable-react": "^11.0.0", "@ogre-tools/injectable-react": "^12.0.1",
"@sentry/electron": "^3.0.8", "@sentry/electron": "^3.0.8",
"@sentry/integrations": "^6.19.3", "@sentry/integrations": "^6.19.3",
"@side/jest-runtime": "^1.0.1", "@side/jest-runtime": "^1.0.1",

View File

@ -16,10 +16,15 @@ const activeHelmRepositoriesInjectable = getInjectable({
instantiate: (di) => { instantiate: (di) => {
const requestFromChannel = di.inject(requestFromChannelInjectionToken); const requestFromChannel = di.inject(requestFromChannelInjectionToken);
const showErrorNotification = di.inject(showErrorNotificationInjectable); const showErrorNotification = di.inject(showErrorNotificationInjectable);
const helmRepositoriesErrorState = di.inject(helmRepositoriesErrorStateInjectable); const helmRepositoriesErrorState = di.inject(
helmRepositoriesErrorStateInjectable,
);
return asyncComputed(async () => { return asyncComputed({
const result = await requestFromChannel(getActiveHelmRepositoriesChannel); getValueFromObservedPromise: async () => {
const result = await requestFromChannel(
getActiveHelmRepositoriesChannel,
);
if (result.callWasSuccessful) { if (result.callWasSuccessful) {
return result.response; return result.response;
@ -35,7 +40,10 @@ const activeHelmRepositoriesInjectable = getInjectable({
return []; return [];
} }
}, []); },
valueWhenPending: [],
});
}, },
}); });

View File

@ -12,9 +12,10 @@ const publicHelmRepositoriesInjectable = getInjectable({
instantiate: (di) => { instantiate: (di) => {
const callForPublicHelmRepositories = di.inject(callForPublicHelmRepositoriesInjectable); const callForPublicHelmRepositories = di.inject(callForPublicHelmRepositoriesInjectable);
return asyncComputed(async () => { return asyncComputed({
return await callForPublicHelmRepositories(); getValueFromObservedPromise: callForPublicHelmRepositories,
}, []); valueWhenPending: [],
});
}, },
}); });

View File

@ -12,10 +12,14 @@ const readmeOfSelectedHelmChartInjectable = getInjectable({
id: "readme-of-selected-helm-chart", id: "readme-of-selected-helm-chart",
instantiate: (di, chart: HelmChart) => { instantiate: (di, chart: HelmChart) => {
const selection = di.inject(helmChartDetailsVersionSelectionInjectable, chart); const selection = di.inject(
helmChartDetailsVersionSelectionInjectable,
chart,
);
const requestHelmChartReadme = di.inject(requestHelmChartReadmeInjectable); const requestHelmChartReadme = di.inject(requestHelmChartReadmeInjectable);
return asyncComputed(async () => { return asyncComputed({
getValueFromObservedPromise: async () => {
const chartVersion = selection.value.get(); const chartVersion = selection.value.get();
if (!chartVersion) { if (!chartVersion) {
@ -27,7 +31,10 @@ const readmeOfSelectedHelmChartInjectable = getInjectable({
chartVersion.getName(), chartVersion.getName(),
chartVersion.getVersion(), chartVersion.getVersion(),
); );
}, ""); },
valueWhenPending: "",
});
}, },
lifecycle: lifecycleEnum.keyedSingleton({ lifecycle: lifecycleEnum.keyedSingleton({

View File

@ -11,13 +11,16 @@ const versionsOfSelectedHelmChartInjectable = getInjectable({
id: "versions-of-selected-helm-chart", id: "versions-of-selected-helm-chart",
instantiate: (di, chart: HelmChart) => { instantiate: (di, chart: HelmChart) => {
const requestHelmChartVersions = di.inject(requestHelmChartVersionsInjectable); const requestHelmChartVersions = di.inject(
requestHelmChartVersionsInjectable,
return asyncComputed(
async () =>
await requestHelmChartVersions(chart.getRepository(), chart.getName()),
[],
); );
return asyncComputed({
getValueFromObservedPromise: async () =>
await requestHelmChartVersions(chart.getRepository(), chart.getName()),
valueWhenPending: [],
});
}, },
lifecycle: lifecycleEnum.keyedSingleton({ lifecycle: lifecycleEnum.keyedSingleton({

View File

@ -12,7 +12,10 @@ const helmChartsInjectable = getInjectable({
instantiate: (di) => { instantiate: (di) => {
const requestHelmCharts = di.inject(requestHelmChartsInjectable); const requestHelmCharts = di.inject(requestHelmChartsInjectable);
return asyncComputed(async () => await requestHelmCharts(), []); return asyncComputed({
getValueFromObservedPromise: requestHelmCharts,
valueWhenPending: [],
});
}, },
}); });

View File

@ -11,16 +11,25 @@ import requestVersionsOfHelmChartInjectable from "./request-versions-of-chart-fo
const helmChartVersionsInjectable = getInjectable({ const helmChartVersionsInjectable = getInjectable({
id: "helm-chart-versions-loader", id: "helm-chart-versions-loader",
instantiate: (di, release) => { instantiate: (di, release) => {
const helmCharts = di.inject(helmChartsInjectable); const helmCharts = di.inject(helmChartsInjectable);
const requestVersionsOfHelmChart = di.inject(requestVersionsOfHelmChartInjectable);
return asyncComputed(async () => { const requestVersionsOfHelmChart = di.inject(
requestVersionsOfHelmChartInjectable,
);
return asyncComputed({
getValueFromObservedPromise: async () => {
await when(() => !helmCharts.pending.get()); await when(() => !helmCharts.pending.get());
return requestVersionsOfHelmChart(release, helmCharts.value.get()); return requestVersionsOfHelmChart(release, helmCharts.value.get());
}, []);
}, },
valueWhenPending: [],
});
},
lifecycle: lifecycleEnum.keyedSingleton({ lifecycle: lifecycleEnum.keyedSingleton({
getInstanceKey: (di, release: HelmRelease) => release.getName(), getInstanceKey: (di, release: HelmRelease) => release.getName(),
}), }),

View File

@ -18,16 +18,23 @@ const releasesInjectable = getInjectable({
const requestHelmReleases = di.inject(requestHelmReleasesInjectable); const requestHelmReleases = di.inject(requestHelmReleasesInjectable);
const toHelmRelease = di.inject(toHelmReleaseInjectable); const toHelmRelease = di.inject(toHelmReleaseInjectable);
return asyncComputed(async () => { return asyncComputed({
getValueFromObservedPromise: async () => {
void releaseSecrets.get(); void releaseSecrets.get();
const releaseArrays = await (clusterContext.hasSelectedAll const releaseArrays = await (clusterContext.hasSelectedAll
? requestHelmReleases() ? requestHelmReleases()
: Promise.all(clusterContext.contextNamespaces.map(namespace => requestHelmReleases(namespace))) : Promise.all(
); clusterContext.contextNamespaces.map((namespace) =>
requestHelmReleases(namespace),
),
));
return releaseArrays.flat().map(toHelmRelease); return releaseArrays.flat().map(toHelmRelease);
}, []); },
valueWhenPending: [],
});
}, },
}); });

View File

@ -54,12 +54,19 @@ const upgradeChartModelInjectable = getInjectable({
&& release.getNs() === tabData.releaseNamespace && release.getNs() === tabData.releaseNamespace
)) ))
)); ));
const versions = di.inject(helmChartVersionsInjectable, release); const versions = di.inject(helmChartVersionsInjectable, release);
const storedConfiguration = asyncComputed(() => requestHelmReleaseConfiguration(
const storedConfiguration = asyncComputed({
getValueFromObservedPromise: () =>
requestHelmReleaseConfiguration(
release.getName(), release.getName(),
release.getNs(), release.getNs(),
true, true,
), ""); ),
valueWhenPending: "",
});
await when(() => !versions.pending.get()); await when(() => !versions.pending.get());

View File

@ -22,22 +22,19 @@ const extensionShouldBeEnabledForClusterFrameInjectable = getInjectable({
) => ) =>
untracked(() => di.inject(extensionIsEnabledForClusterInjectable, { extension, cluster })); untracked(() => di.inject(extensionIsEnabledForClusterInjectable, { extension, cluster }));
return asyncComputed( return asyncComputed({
async () => { getValueFromObservedPromise: async () => {
const cluster = activeKubernetesCluster.get(); const cluster = activeKubernetesCluster.get();
if (!cluster) { if (!cluster) {
return false; return false;
} }
return getExtensionIsEnabledForCluster( return getExtensionIsEnabledForCluster(extension, cluster);
extension,
cluster,
);
}, },
false, valueWhenPending: false,
); });
}, },
lifecycle: lifecycleEnum.keyedSingleton({ lifecycle: lifecycleEnum.keyedSingleton({

View File

@ -118,7 +118,7 @@ export const getDiForUnitTesting = (
// TODO: Remove after "LensRendererExtension.isEnabledForCluster" is removed // TODO: Remove after "LensRendererExtension.isEnabledForCluster" is removed
di.override(extensionShouldBeEnabledForClusterFrameInjectable, () => di.override(extensionShouldBeEnabledForClusterFrameInjectable, () =>
asyncComputed(async () => true, true), asyncComputed({ getValueFromObservedPromise: async () => true, valueWhenPending: true }),
); );
// TODO: Remove side-effects and shared global state // TODO: Remove side-effects and shared global state

View File

@ -1408,47 +1408,30 @@
read-package-json-fast "^2.0.3" read-package-json-fast "^2.0.3"
which "^2.0.2" which "^2.0.2"
"@ogre-tools/fp@^11.0.0": "@ogre-tools/fp@^12.0.1":
version "11.0.0" version "12.0.1"
resolved "https://registry.yarnpkg.com/@ogre-tools/fp/-/fp-11.0.0.tgz#b448079014319cf43284a2de5e4cb883bf73aed3" resolved "https://registry.yarnpkg.com/@ogre-tools/fp/-/fp-12.0.1.tgz#1f932c8c4cc04075f92ab5ca564db158ac1514d4"
integrity sha512-mmpuPzITVQ1iHTAHPVdZqqs2Z1p1vx6hTxoSQ4TUOpzfFoW1AzDGlm1r9eWHuqjRSvMt5GpkB3qp1Rbz68zBkA== integrity sha512-BzMhkI4wPnuI+hXJDbtHUXQn/uBjJLx3W0oDaIFV+lLpkneUU0oW9D5uZFHNOouzCgf67/tnmUC6Ohevbr7/VA==
dependencies:
lodash "^4.17.21"
"@ogre-tools/injectable-extension-for-auto-registration@^11.0.0": "@ogre-tools/injectable-extension-for-auto-registration@^12.0.1":
version "11.0.0" version "12.0.1"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-auto-registration/-/injectable-extension-for-auto-registration-11.0.0.tgz#3cdf174e54ea0793ed7acfe9bcda3d47c2ebc61d" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-auto-registration/-/injectable-extension-for-auto-registration-12.0.1.tgz#878f73b5408b12193664f4920289905eacb4c1cc"
integrity sha512-48snZo7pZbghtZWlCzuulw0BHZQzSKVeUN1VEjAEtwjFTqiABQigzY6hkh6owXAQdsIniuPWEdCDBGXDClASbQ== integrity sha512-itKcxEJ/J8SKGD/Wwj0UYOA+/nqwnrwanhikY6qhlibj8guujX77Iip7vMBzJFc2nIrRaQRcpNV2eXe+tjQUdg==
dependencies:
"@ogre-tools/fp" "^11.0.0"
"@ogre-tools/injectable" "^11.0.0"
lodash "^4.17.21"
"@ogre-tools/injectable-extension-for-mobx@^11.0.0": "@ogre-tools/injectable-extension-for-mobx@^12.0.1":
version "11.0.0" version "12.0.1"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-mobx/-/injectable-extension-for-mobx-11.0.0.tgz#9087054d5bfd7efff15158dfd04d16f8cdfbdfb9" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-extension-for-mobx/-/injectable-extension-for-mobx-12.0.1.tgz#1e9de8caba076d7cebda4177a5ab763594b08b28"
integrity sha512-yiTbE5wRKn7zkRj1kXFswrDMwMkdj6XNbQTuaP2aAPDdJ01Iff2FgdBXxYXL1ZzHVFbdSL2WvFnsZdXPUow9LQ== integrity sha512-M1penOpZfO3/rJMb6WN4IL86p9Lx9tOMCipiNkAyitNLGWfeDPG279JlCs9E3Uw8R9nkFPiw8Je2SLnwnM9o+A==
dependencies:
"@ogre-tools/fp" "^11.0.0"
"@ogre-tools/injectable" "^11.0.0"
lodash "^4.17.21"
"@ogre-tools/injectable-react@^11.0.0": "@ogre-tools/injectable-react@^12.0.1":
version "11.0.0" version "12.0.1"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-react/-/injectable-react-11.0.0.tgz#67e68a1404a497cd0265490dd869dea13d60717a" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable-react/-/injectable-react-12.0.1.tgz#07a43f25bd78db37cb2c00bc0c06e0a69394f519"
integrity sha512-rQdO4RRgPPAGKOVP6JQopYMsTOUdXnwtONPGRy3M5BiHLeP//xQH9NKGjU44IHSorc3IsDk6hHttDgmP79xdzw== integrity sha512-LAOh/EHKqk/pQcBRZUAz0VcJwgBeIPxHwlV/Apw0aEBBoMuYLsLZh47rES8sMYMV6N5x7oVfkjMscujY0DCgaQ==
dependencies:
"@ogre-tools/fp" "^11.0.0"
"@ogre-tools/injectable" "^11.0.0"
lodash "^4.17.21"
"@ogre-tools/injectable@^11.0.0": "@ogre-tools/injectable@^12.0.1":
version "11.0.0" version "12.0.1"
resolved "https://registry.yarnpkg.com/@ogre-tools/injectable/-/injectable-11.0.0.tgz#43112e6bdeb8e52ac39aea86200fc9697a46fbc0" resolved "https://registry.yarnpkg.com/@ogre-tools/injectable/-/injectable-12.0.1.tgz#53f9981f7f165da4277857b8338cc4097d357ad2"
integrity sha512-kefX6Nv81tuy6cG/veZmt+XRzNft4BJBnlHlosisvcbdxRt8wkJg3sv2ud9gtJsW0LBtmvMf0SThdpayrFa+sQ== integrity sha512-uOx8STN2wSc9hknDSTGqViyR89Vwg7rGacwrVNchgyo48/QJsmZZz6cd1Aw3nT4vr7ekjTc2lh0Rz6zGIv47hg==
dependencies:
"@ogre-tools/fp" "^11.0.0"
lodash "^4.17.21"
"@pmmmwh/react-refresh-webpack-plugin@^0.5.8": "@pmmmwh/react-refresh-webpack-plugin@^0.5.8":
version "0.5.8" version "0.5.8"