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

80 Commits

Author SHA1 Message Date
Sebastian Malton
4379edf0c7 chore: Remove leading '+' on some directory names
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-26 09:26:39 -04:00
Gabriel
8c0220c353 fix: observableHistoryInjectionToken and 1 revert for GlobalOverride
Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-04-25 17:38:02 -04:00
Gabriel
e8c94abc0b feature @k8slens/routing
Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-04-25 17:38:02 -04:00
Sebastian Malton
1c8559013b chore: Add test verifying new notification formatting behaviour
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
5dc94f291b chore: Update tests to use more business logic
- To have a higher confidence in the code, given that the old tests didn't save us
  from modifying the code before.

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
bc149f0627 chore: Simplify requestPatchKubeResource impl
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
4716dcc434 chore: Rename injectables to remove redundancy
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
6c3e8e83c0 chore: Move files around to flatten hierarchy
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
2f21ba51d1 chore: Change parseKubeApi into a no-throw version
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-24 10:17:24 -04:00
Sebastian Malton
3d0b0b7bd1 chore: Fix showing-details-for-helm-release tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-21 14:11:15 -04:00
Sebastian Malton
535bac4df9 chore: Update snapshots after adding new testid
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-21 14:11:15 -04:00
Sebastian Malton
bb5876b39c chore: Add behavioural tests for deleting sub namespaces
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-21 14:11:15 -04:00
Gabriel
5128730fd2 chore: extract button from core for error-boundary
Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-04-20 09:02:46 -04:00
Sami Tiilikainen
5eb41e8a6c
List layout column injection token package (#7544)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2023-04-20 09:01:50 -04:00
Sebastian Malton
353da78d4b chore: Switch defaultUpdateChannel to not use Initializable at all
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-18 08:16:40 -04:00
Sebastian Malton
53920a7046 chore: Switch semanticBuildVersion to not use Initializable at all
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-18 08:16:40 -04:00
Sebastian Malton
fc18c61d36 chore: Switch releaseChannel to not use Initializable at all
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-18 08:16:40 -04:00
Sebastian Malton
6fa9e2cde6 chore: Switch semanticBuildVersion to use new Initializable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-18 08:16:40 -04:00
Sebastian Malton
1b96a94c14 chore: Switch buildVersion to use new Initializable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-18 08:16:40 -04:00
Jari Kolehmainen
f6977428da fix(core): hide update button if downloading of an update fails
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2023-04-18 15:10:11 +03:00
Sebastian Malton
35c3d31f2a chore: Fix lint for @k8slens/application
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-13 11:13:26 -04:00
Sebastian Malton
1c48dda707 chore: Bump @ogre-tools/* to 15.3.1 and fixup telemetry decorator
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-13 11:13:26 -04:00
Sebastian Malton
672ddc7b8d chore: Convert show-details telemetry to instantiationDecoratorToken
- Fix bug about throwing error on some calls to showDetails

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-13 11:13:26 -04:00
Sebastian Malton
ba8f7f916d chore: Upgrade versions of @ogre-tools/* to 15.3.0
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-13 11:13:26 -04:00
Sebastian Malton
2c4a7ecfb4 chore: Replace all uses of stopServicesAndExitApp with requestQuitOfApp
- Also updated tests with new behaviour

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-12 15:15:36 -04:00
Sebastian Malton
1581da458d chore: Move disconnecting cluster connections to own runnable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-12 15:15:36 -04:00
Sebastian Malton
9d181ab6ab chore: Move stopping extensions to own runnable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-12 15:15:36 -04:00
Sebastian Malton
802cbdb096 chore: Rename exitApp to forceAppExit
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-12 15:15:36 -04:00
Sebastian Malton
a81b0f961e chore: Rename tokens to be more correct
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-12 15:15:36 -04:00
Juho Heikka
53cb3a5d38
Add metrics Feature (#7507)
Signed-off-by: Juho Heikka <juho.heikka@gmail.com>
2023-04-12 14:40:00 +03:00
Sebastian Malton
c9cd1cd8e0 chore: Update snapshots due to behaviour changes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-06 09:05:27 -04:00
Sebastian Malton
82bf67cc9e chore: Simplify extension dependency injection
- Has better typing
- Removes use of unnusual unique symbol
- Fix welcome banner tests
    - Update associated snapshots
- Start converting custom column tests to use ApplicationBuilder
- Remove old and unnused RecursiveTreeView
- Introduce new TreeView for use in CatalogMenu to fix tests

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-06 09:05:27 -04:00
Sebastian Malton
5db8fc1342 chore: Remove explicit throw when finding platformSpecificVersion
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 16:17:50 -04:00
Sebastian Malton
c0ebe605c4 fix: Fix tests by recreating non-specific injection token
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 16:17:50 -04:00
Sebastian Malton
5fc32c0b27 chore: convert request-system-cas to use PlatformSpecific
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 16:17:50 -04:00
Sebastian Malton
630928d6ba chore: fix spelling
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 16:17:50 -04:00
Sebastian Malton
807f98ed1b
Persist apiVersion when editing resources in monaco (#4406)
* Persist apiVersion when editing resources in monaco

- Use a new custom k8slens prefixed label

- Means that users aren't surprised when they use lens to update a
  resource to a new apiVersionWithGroup

- Doesn't touch the versions in the stores

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix lint

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* fix: Fix lint issues

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* chore: make lint not bail on failure

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* chore: Run lint:fix on all files

Signed-off-by: Sebastian Malton <sebastian@malton.name>

---------

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 10:56:23 -04:00
Sebastian Malton
058494bc73
Introduce clearer boundry between extensions (#7164)
- Bundled extensions are always enabled, and are always compatible
- Have bundled extensions be loaded asyncronously to support
  typescript dynamic import (which is typed) as opposed to require

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-04-05 10:21:38 -04:00
Sami Tiilikainen
69b132300c
Renderer file logging through IPC (#7499)
* Renderer file logging through IPC

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Remove pagehide event listener as it may cause UI to freeze

Pagehide was needed in cluster frame to better handle main frame close/reload situation. But even empty pagehide listener in cluster frame seems to freeze the UI at least on some situations (multiple clusters open).

Beforeunload is not always executed in cluster frame when main frame is reloaded/closed, leaving log files open. To fix that, `stopIpcLoggingInjectable` is introduced to close all log files.

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Remove unnecessary formatting changes

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Lint fix

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Winston logger override

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Remove usage of doGeneralOverrides as it has been removed

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Update imports to match the new base

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Remove unnecessary id

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Review improvements

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Extract beforeunload listener to injectable

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Typo fix

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Behavioural tests and log file rename

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Update messaging to work with new base

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

* Move files to feature

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>

---------

Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com>
2023-04-04 08:11:06 -04:00
Alex Andreev
2cf8a2f188
Add workload 'kind' param to 'show-details' event (#7464)
* Introduce getWorkloadKindFromUrl() method

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Whitelist kind param to 'show-details' event

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Using parseKubeApi instead of new utility

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding checks for empty selfLink

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

---------

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2023-04-04 09:59:36 +03:00
Gabriel Accettola
e790757302
Show Message Box when no update is available after manually checking for updates (#7390)
* no updates available

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* lint fix

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* lint padding-line-between-statements

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* test stubs - wip

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* tray - when no new update is discovered showMessagePopupMock toHaveBeenCalled & toHaveBeenCalledWith

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* fake tray and fake menu parity

Signed-off-by: Gabriel <gaccettola@mirantis.com>

* tray and menu passing tests and lint

Signed-off-by: Gabriel <gaccettola@mirantis.com>

---------

Signed-off-by: Gabriel <gaccettola@mirantis.com>
2023-04-03 15:36:25 -04:00
Sebastian Malton
fe2fd4c1fd
Move Cluster.apiUrl to seperate injectable (#7354)
* Refactor out Cluster.apiUrl to direct reading

- Should help prevent using stale data

- Removes some uses of synchronous FS operations

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix type errors

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Rename helper function to better communicate intent

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Improve prometheus handler tests to override less things

Signed-off-by: Sebastian Malton <sebastian@malton.name>

---------

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-03-31 15:28:14 -04:00
Sebastian Malton
a0fea20300
Stop all extensions before quitting app (#7450)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-03-31 13:37:29 -04:00
Janne Savolainen
b5e564271e
Extract React Application as a Feature (#7441)
* Fix webpack config for react

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Introduce package for discovering html elements in unit tests

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Switch to using discovery of html elements from package

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Introduce competition for starting react application inside the Feature

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Move stuff in application start to earlier timeslot having no real need to be done so late

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Switch to using react application root feature being more friendly to extending

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Switch to using more familiar pattern of higher order components for wrapping react application

Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Adapt to more familiar pattern for higher order components

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

* Rename feature for clarity

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>

---------

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2023-03-31 11:57:20 +03:00
Alex Andreev
15762615d2
Block renderering non http(s):// links via <HelmChartIcon> (#7419)
* Adding HelmChartIcon tests

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* HelmChartIcon refactoring

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fine-tune styles in HelmChartDetails

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding styles to separate module

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Clean up

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Linter fixes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Updating snapshots

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

---------

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2023-03-29 07:39:57 -04:00
Sebastian Malton
49f0a1af9c
Remove BaseStore<T> and replace with composition of dependencies (#7002)
* Rename ExtensionStore -> BaseExtensionStore
- The name was too close to ExtensionsStore

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move ExtensionsStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move ClusterStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move UserStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Cleanup types to remove multiple cast locations

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move HotbarStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move WeblinkStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Move FileSystemProvisionerStore to new format

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Update snapshots

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Clean up impl and rename to better describe intent

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix remaining type errors

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fully split apart the enabled extensions storage

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fully split apart the clusters storage

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fully split apart the hotbar storage

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fully split apart the weblinks storage

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fully split apart the user preferences storage

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix crashing

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix tests and snapshots

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix integration test failures

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Improve typing to prevent errors in the future.

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Cleanup @k8slens/messaging and friends

- To fix type errors

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix lint issue

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix type errors

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix global override not being complete enough causing tests to fail

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Bump memory for unit tests on CI

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Attempt to fix memory issue on CI again

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fixup test because of new injectables

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Upgrade Jest

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix unit tests falling over

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Back out jest config change

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Remove console log

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Update snapshot

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix tests by matching equality instead of snapshots

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix tests by forcing specific snapshot style

- Ubuntu CI seems to format arrays in snapshots differently than macOS locally

Signed-off-by: Sebastian Malton <sebastian@malton.name>

---------

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-03-28 17:54:25 +03:00
Alex Andreev
7d71873135
Fix download all logs for pod with few containers (#7413)
* Use container name as downloaded file name

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Specify container to call for logs query

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing tests

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

---------

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2023-03-27 12:22:37 +03:00
Alex Andreev
4a3f08d798
Fix Check for updates menu item title capitalisation (#7396)
* Check for updates -> Check for Updates

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Revert debugging changes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding ellipsis to every Check for Updates items

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

---------

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2023-03-23 11:37:10 +03:00
Sebastian Malton
4b1d740d61
Fix behaviour of auto generated CRD KubeApis and KubeObjectStores (#7384)
* Simplify CRD KubeApi registrations

- Switch to auto injectable registrations

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Make sure that stores can still be retrieved

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Cleanup get extension fake to simplify impl

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Simplify logic for extensionInjectable

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix test in differencing registrator

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Cleanup code style

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix some tests

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix HPA details tests

Signed-off-by: Sebastian Malton <sebastian@malton.name>

---------

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-03-22 17:51:26 +02:00
Sebastian Malton
8a80607d85
Add behavioural tests for Cluster Menu K8s Resources in Sidebar menu not being shown (#7280)
* Add behavioural tests to cover bug fix

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Remove previous fix to fix last test

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* More consistent impl of flushPromises

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fixup tests

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Remove ContextHandler test (dead code)

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix PrometheusHandler describe text

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Fix type errors

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Add useful case test-utils helper

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Rename file to match token

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Cleanup tests to fix type errors and use tables

Signed-off-by: Sebastian Malton <sebastian@malton.name>

---------

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-03-21 22:00:12 -04:00