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

403 Commits

Author SHA1 Message Date
Sebastian Malton
1ce2e727af
Fix crash in IngressDetails (#4267)
* Fix crash in IngressDetails

- Adds check in Ingress.getServiceNamePort() for a
  .spec.defaultBackend.resource instead of .spec.defaultBackend.service

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

* remove undefined

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

* Add comment about RequireExactlyOne

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-09 22:52:36 -05:00
Sebastian Malton
18d695348b
Change base64 functions to be exported not as object children (#4298) 2021-11-09 13:43:45 -05:00
Sebastian Malton
200061d386
Use .status.phase instead of computing it for Pod.getStatusMessage (#4286) 2021-11-09 09:33:42 -05:00
Sebastian Malton
5eb1b8553d
Support window nodes for node-shells (#3624)
* Support window nodes for node-shells

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

* Also check beta.kubernetes/os label

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

* Add comment about linux fallback

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-08 20:11:40 -05:00
Roman
368e2d9a00
Monaco editor refactoring (#4225)
* monaco editor refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* clean up / responding to comments

Signed-off-by: Roman <ixrock@gmail.com>

* move custom monaco themes to own folder

Signed-off-by: Roman <ixrock@gmail.com>

* fix lint

Signed-off-by: Roman <ixrock@gmail.com>

* removed unused rules from webpack's config (renderer)

Signed-off-by: Roman <ixrock@gmail.com>
2021-11-03 17:19:17 +02:00
Juho Heikka
f820f3df53
Fix lint error (#4238)
Signed-off-by: Juho Heikka <juho.heikka@gmail.com>
2021-11-03 12:31:59 +02:00
Sebastian Malton
c6dce043a7
Lint: comma-spacing (error) & comma-dangle (error) (#4200)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-02 17:38:20 -04:00
chh
b06c33383b
Prevent injection of expired "DST Root CA X3" from host CA stores; Electron to 13.6 (#4185) 2021-11-02 18:16:10 +02:00
Sebastian Malton
7ba359be03
Only offer app version downgrade if updateChannel differs from current version (#4212) 2021-11-02 12:07:50 -04:00
Panu Horsmalahti
6b047332c0
Reduce JSON-API logging. (#4221)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-11-02 13:31:10 +02:00
Sebastian Malton
41863e87ce
Lint: object-curly-spacing (error) (#4198) 2021-11-01 08:45:45 -04:00
Sebastian Malton
0759b80435
Lint: space-before-function-paren (error) (#4199) 2021-11-01 08:37:49 -04:00
Sebastian Malton
e74f17e8ce
Lint: no-unused-expressions (error) (#4197) 2021-11-01 08:37:37 -04:00
Sebastian Malton
4d63ef2878
Use spec.serviceName as an externalIP if nothing else (#4188)
* Use spec.serviceName as an externalIP if nothing else

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

* Move using externalName to display logic

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-01 07:23:29 -04:00
Patrick J. McNerthney
6294343b79
Fix the broken ingress metrics, the namespace is needed in the opts. (#4203)
Signed-off-by: Patrick J McNerthney <pat@mcnerthney.com>
2021-11-01 11:21:13 +03:00
Panu Horsmalahti
be8e350510
Fix IPC race condition. (#4169)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-10-28 18:46:16 +03:00
Sebastian Malton
f297407156
Stop using @electron/remote to obtain app.getPath() (#4078)
* Stop using remote to obtain app.getPath()

- Initialize entire map in bootstrap()

- Updated unit tests

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

* Resolve PR comments

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

* Fix test

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

* Fix build

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

* Ensure that init can only be called once and catch errors

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

* Replace basically all uses of app.getPath() with AppPaths.get()

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

* Fix unit tests

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-10-27 21:07:41 -04:00
Sebastian Malton
5abc1c618c
Add several more util functions and tests (#4106) 2021-10-26 09:36:34 -04:00
dependabot[bot]
25c7c1a496
Bump @types/js-yaml from 4.0.2 to 4.0.4 (#4124)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-10-25 16:53:35 -04:00
Sebastian Malton
221ab46540
Handle named ports in probe label renderer (#4118)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-10-25 10:40:45 -04:00
Panu Horsmalahti
0dab7b8073
Add option for providing request options to watch requests (#4102)
* Add option for providing request options to watch requests.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Move getRequestOptions to JsonApi.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Style fix

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Make token to be a string or a function

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Fix isFunction import.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Make getRequestOptions async.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Remove commented code.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Only set token if it's truthy.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Review fixes.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Add this.getRequestOptions default

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-10-21 19:18:32 +03:00
Jim Ehrismann
731f119b1b
added port-forward details (#4080)
* added port-forward details

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* address review comments, plus added toolbar/menu to port-forward details Drawer

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* added getById() to portForwardStore to eliminate direct items access from outside

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2021-10-20 16:02:20 -04:00
Sebastian Malton
1f42a5148e
Remove api lookup in KubeObjectStore (#4092) 2021-10-20 10:44:13 -04:00
Sebastian Malton
32562b11a4
Remove ClusterStore.removedClusters and correctly delete lens storage file (#4077) 2021-10-20 08:51:26 -04:00
Sebastian Malton
b4a4cc6be4
Correctly handle empty string valued secrets in SecretDetails (#4079) 2021-10-20 08:51:03 -04:00
Sebastian Malton
38276bbbff
Update helm cache if files have been modified (#3973) 2021-10-20 08:50:52 -04:00
Sebastian Malton
64175b24e0
Sort pod names by convering sub-parts (#3314) 2021-10-19 10:36:49 -04:00
Sebastian Malton
cbffb85650
Disable kubectl download mirror options when not available (#3956) 2021-10-19 09:22:06 -04:00
Sebastian Malton
125a073007
Add context menu into sidebar (#4044) 2021-10-19 09:19:25 -04:00
Sebastian Malton
e21888c62c
Fix iter function return values (#3958) 2021-10-19 09:02:59 -04:00
Alex Andreev
0eac46530a
Pin icon for Catalog list items (#3810) 2021-10-18 10:27:53 -04:00
Sebastian Malton
5998b4ca84
Upgrade js-yaml to 4.X (#3623) 2021-10-18 10:03:10 -04:00
Sebastian Malton
f12b0658ba
Add URL display to weblink URLs (#4046) 2021-10-18 09:38:10 -04:00
Sebastian Malton
9d5689ce69
Only allow extensions to use non-lens specific cluster phases (#4036) 2021-10-14 10:25:48 -04:00
Sebastian Malton
7e0aeca119
Remove exec.command checking (#3881) 2021-10-14 08:46:23 -04:00
Sebastian Malton
3988229a6c
Fix auto-update channel checking and pinning (#4030) 2021-10-13 14:48:47 -04:00
Sebastian Malton
e64060cc69
Conditionally render node taints upon value existance (#3989) 2021-10-13 10:34:28 -04:00
Sebastian Malton
9c94c19a4f
Add ability to configure lens release channel (#3971) 2021-10-12 08:32:06 -04:00
Sebastian Malton
329f4706c0
Use the served and storage version of a CRD instead of the first (#3999) 2021-10-12 07:31:11 -04:00
Sebastian Malton
0cd3931d67
Don't run store migrations on renderer (#3968) 2021-10-08 09:15:40 -04:00
Jim Ehrismann
07c8177a97
Feature/port forward dashboard (#3922)
* Added ability to add custom port on pod and service port forwarding (#3295)

* Added ability to add custom port on pod and service port forwarding

Signed-off-by: rdeepc <12953177+rdeepc@users.noreply.github.com>

* Added ability to add custom port on pod and service port forwarding

- pod-container-port fixed init async and active port checking
- service-port-component fixed init async and active port checking
- port-forward-route promise and response fix

Signed-off-by: rdeepc <12953177+rdeepc@users.noreply.github.com>

* Added ability to add custom port on pod and service port forwarding

Signed-off-by: rdeepc <12953177+rdeepc@users.noreply.github.com>

* - Added Custom Port Selection for port forwarding
- Implemented Random Port if custom port is not provided

Signed-off-by: rdeepc <12953177+rdeepc@users.noreply.github.com>

Co-authored-by: Saumya Shovan Roy <saumyashovanroy@gmail.com>

* cherry-pick of hackweek work plus merge conflicts/build errors

    added a route to get all port forwards

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

    Added Forwarded Ports to cluster dashboard

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

    working port-forward page (open, edit, remove)

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

    added local storage to the port-forward store

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

    automatically restore port-forward after pod is restarted

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

    start port-forwards using random local port by default, rearranged pod and service port-forward UI

    Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* refactor

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* more refactoring, don't always open port-forwards in browser, refined reused port-forward dialog

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* removed unimplemented forwarded port details page,modified logging

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* addressed some review comments

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* made port and forwardPort query params and cleaned up port-forward routing paths

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* address more review comments and change dashboard tab name to 'Port Forwarding'

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* changed port and forwardPort fields to be Numbers

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* removed extraneous reset() call, reorder field declarations

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* port-forward now gets the bundled kubectl path without going through the 'ensureKubectl' hoops

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* more cleanup/tweaking

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* fix bug where port-forward info did not update on pod details page when different pod (in same deployment?) is clicked

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

Co-authored-by: Saumya Shovan Roy (Deep) <12953177+rdeepc@users.noreply.github.com>
Co-authored-by: Saumya Shovan Roy <saumyashovanroy@gmail.com>
2021-10-07 15:51:26 -04:00
Sebastian Malton
e10c13cdf4
Switch integration tests to get application menus by IDs (#3912) 2021-10-07 15:30:52 -04:00
Juho Heikka
724b9450a6
Change onBeforeRun API (#3981)
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-10-07 12:43:50 -04:00
Sebastian Malton
913244b204
Catch metadata being undefined at KubeObject creation (#3960) 2021-10-07 10:09:21 -04:00
Marc Bachmann
851274d314
Fix prometheus operator support (#3653) 2021-10-05 12:35:57 -04:00
Sebastian Malton
4705a66632
Use JSON patch for editing components (#3674) 2021-10-04 16:28:19 -04:00
Juho Heikka
8bbaf8c59e
Add terminal copy on select (#3904) 2021-09-29 08:55:39 -04:00
Alex Andreev
6b123dc4c0
Redirect from /catalog to last catalog page (#3807)
* Redirect from /catalog to last catalog page

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

* Cleaning up

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

* Cleaning up more

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

* Splitting url params to pass in catalogURL()

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-09-29 09:04:54 +03:00
Jim Ehrismann
8bca8dd7dc
updated expired community slack invite link with permanent one (#3906)
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2021-09-28 12:50:34 -04:00
Jari Kolehmainen
06854b4cac
Disable log file writing on renderer (#3874)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-09-23 12:36:53 +03:00
Jari Kolehmainen
02c90c760d
fix missing query parameter (#3875)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-09-23 12:23:00 +03:00
Panu Horsmalahti
429418a1e2
Emit contextMenuOpen for WebLink CatalogEntity (#3842)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-09-20 10:09:51 -04:00
Lauri Nevala
53ce818589
Revert "Fix check for user exec command (#3664)" (#3827)
This reverts commit 056b818ceb.

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-09-17 11:13:04 +03:00
Sebastian Malton
056b818ceb
Fix check for user exec command (#3664) 2021-09-15 13:09:57 -04:00
Sebastian Malton
f68cbabbc9
Fix cluster's accessibleNamespaces being reset on restarting Lens (#3817)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-09-15 12:19:15 -04:00
Panu Horsmalahti
8e9dd50828
Add catalogAddMenu filter to CatalogCategory (#3722) 2021-09-13 11:33:11 -04:00
Panu Horsmalahti
936927af98
Add CatalogCategory filter to the extension API (#3718)
* Add CatalogCategory filter to the extension API.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Fix test.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-09-13 15:46:28 +03:00
chh
e2b096fae1
Stop Sentry from capturing console.error and logger.error (#3785)
Signed-off-by: Hung-Han (Henry) Chen <chenhungh@gmail.com>
2021-09-13 10:56:12 +03:00
Jari Kolehmainen
3262b13926
Allow KubeApi connect directly to remote k8s (#3766)
* allow KubeApi to connect directly to remote k8s

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* backward compat

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* backward compat

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-09-13 10:14:05 +03:00
Lauri Nevala
8651eb9594
Use PATCH verb to scale deployments and statefulsets (#3744)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-09-09 09:31:11 +03:00
Sebastian Malton
d72158cc63
Fix local cluster delete flow (#3473)
* Fix local cluster delete flow

- Now checks for the cluster being the current cluster and confirms the
  action

- <ConfirmDialog> is fixed to work with several confirmations happinging
  at once

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

* Custom delete cluster dialog

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

* Saving kubeconfig file refactoring

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

* Switching current-context from dialog

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

* Cleaning up css styles

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

* Show Delete menu item only for local cluster

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

* Make all dialogs rounded

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

* Releasing kubeconfig file after lock

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

* Adding delete cluster dialog tests

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

* Cleaning up

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

* Delete cluster dialog refactoring

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

* Fixing typo

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

* Removing temp file on error

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

* Updating tests

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

* Do not switch context if select is hidden

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

* Removing spread symbols

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

* Moving cluster delete event from catalog initializer to ipc

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

* Refactor warning messages

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

* Getting spread (...) back to fix Select render

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

* Using async form without promises

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

* Do not show context switcher if no contexts left

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

* Updating the tests

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

* don't allow delete of the active cluster before setting to new active cluster (#3749)

* don't allow user to delete the active cluster before setting to new active cluster

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* fix lint issues

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* Show delete button if no more contexts available

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

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

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Co-authored-by: Jim Ehrismann <40840436+jim-docker@users.noreply.github.com>
2021-09-08 15:06:14 +03:00
Alex Andreev
16c4656a7d
TopBar home icon (#3740)
* Adding home button

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

* Highlight catalog entity on route match

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

* Wait for general entites to load

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

* Adding WelcomePage catalog entity

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

* Highlight general entities in hotbar if their route matches

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

* Fixing tests

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

* Moving active entities sync to helper function

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

* Fix welcome page test

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-09-07 15:18:46 +03:00
chh
366a2f99a1
Make ipc.boradcast not stopping at uncaught exceptions, improve typing, improve error logs (#3717)
* Improve typing, print better error message instead of stop at throwing at view.getType(); continue to send to subframe even if one throws

Signed-off-by: Hung-Han (Henry) Chen <chenhungh@gmail.com>

* Remove console.log

Signed-off-by: Hung-Han (Henry) Chen <chenhungh@gmail.com>

* Remove extra line

Signed-off-by: Hung-Han (Henry) Chen <chenhungh@gmail.com>
2021-09-02 13:20:18 +03:00
Lauri Nevala
584d45c5e0
Allow to configure default namespace used in terminal (#3706)
* Allow to configure default namespace used in terminal

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Fix lint issues

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-09-01 12:50:11 +03:00
Sebastian Malton
6fdb2f0b58
Support filtering catalog entities (#3647)
* Support filtering catalog entities

- This allows extensions and OpenLens to restrict which of the entities
  the sources have provied are "visible" to the rest of Lens

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

* Fix lint

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

* switch to filtering only for catalog view

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

* Fix test

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Add test to iter reduce

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

Co-authored-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2021-08-31 16:00:56 +03:00
Sebastian Malton
59933507e4
Upgrade to electron 12 and Node 14 (#3572)
Upgrade to electron 12 and Node 14

- Compute cluster ID for tests
- Switch to temporary appData path while testing

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

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-26 12:13:31 -04:00
Sebastian Malton
5f89b3e31f
Fix filtering deprecated charts (#3635) 2021-08-24 08:29:36 -04:00
Sebastian Malton
7d8a6a3e25
Validate and set defaults for HelmChart creation (#3492) 2021-08-18 08:06:57 -04:00
Jari Kolehmainen
016d012439
Fix KubeApi.watch leak on abort (#3629)
* fix KubeApi.watch leak on abort

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* make linter happy

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-18 11:50:03 +03:00
Sebastian Malton
1833a1c722
Fix StatefulSet.getImages to handle null case (#3619) 2021-08-17 13:02:33 -04:00
Sebastian Malton
e979cbf7c7
Add back sentry winston logger transport (#3602)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-08-12 11:01:39 -04:00
pashevskii
e4c393244a
Replace Ace Editor with monaco (#2949)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-08-12 13:00:52 +03:00
Jari Kolehmainen
be6df7d25a
Allow to pass KubeObjectStore.api via constructor (#3596)
* allow to pass KubeObjectStore.api via constructor

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* remove throw for backward compat reasons

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-12 11:13:56 +03:00
Jari Kolehmainen
443186d4f5
fix apiBase initialization on main (#3595)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-12 10:34:45 +03:00
Alex Andreev
b7be3ae21a
Sync kubeconfigs from catalog (#3573)
* Kubeconfig syncs from Catalog

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

* Allow to select directory to sync

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

* Convert Preferences to Route-based component

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

* Jump from notification to Preferences

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

* Adding navigateWithoutHistoryChange() method

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

* Cleaning up

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

* Fixing integration tests (no check for Telemetry tab)

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

* Fixing tests harder

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-08-11 13:24:33 +03:00
Jari Kolehmainen
58a446bd45
Refactor k8s api to common (#3553)
* refactor kube api to common

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* refactor more utils to common

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* refactor more utils to common

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* switch to use node-fetch on both sides

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* improve logger

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix lint errors

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix/improve tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix node-fetch require error on prod build

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* preload fix

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fixes

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* read serverAddress from apiBase

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-10 13:26:14 +03:00
Sebastian Malton
2b3351bf9b
Remove circular dependency with isAllowedResource function (#3545)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-08-04 16:01:47 -04:00
Sebastian Malton
17b14f9871
Make sure that there are only ever 12 slots in a hotbar (#3379)
* Make sure that there are only ever 12 slots in a hotbar

- Send notification if hotbar is full

- Filter out on every fromStore call

- Switch to broadcast on error

- Fix addToHotbar index check

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

* change when to/fromStore are located

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-08-04 10:37:08 +03:00
Sebastian Malton
3fe8014f11
Move Hotbar types to seperate file (#3532) 2021-08-03 14:38:36 -04:00
Sebastian Malton
a6e91fc34a
Move cluster related types and function into seperate files (#3530) 2021-08-03 10:36:14 -04:00
Sebastian Malton
b9bb990690
Add new SentryTransport to winston (#3432)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-08-03 08:38:23 -04:00
Violetta Shakirova
1b11433bca
Add ability to rename hotbars (#3469)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2021-07-27 08:54:41 -04:00
Jan Jansen
c8f27e537b
Add accessibleNamespaces to KubernetesClusterModel (#3487)
Fixes #3485

Signed-off-by: Jan Jansen <jan.jansen@gdata.de>
2021-07-23 11:40:13 -04:00
Sebastian Malton
da53aa0d79
Treat default weblinks same as any other weblinks (#3385)
- Use seenWeblink and check for non-arrays

- Spread out link validation

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-22 20:28:01 -04:00
Alex Andreev
4fe0a7d73e
Catalog render optimizations (#3422) 2021-07-21 08:51:46 -04:00
Sebastian Malton
14b70a6c53
Cleanup <EventEmitter> (#3338) 2021-07-20 08:39:44 -04:00
Violetta Shakirova
8683735630
Fix HPA visibility (#3426)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2021-07-19 11:38:44 -04:00
Josh Soref
e87b4836be
Fix spelling (#3181)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2021-07-16 08:53:01 -04:00
Sebastian Malton
0a8cf96415
Add kube-version and distro on detail panel (#3335) 2021-07-14 08:30:57 -04:00
Sebastian Malton
9e363b8d5f
Remove win-ca/pem before publish & catch inject error (#3362) 2021-07-13 11:40:52 -04:00
Sebastian Malton
9b2031159d
Ignore extensions' clusters when adding to kubeConfigSync (#3313) 2021-07-12 12:05:05 -04:00
Violetta Shakirova
621f5ba0b3
Make node shell image configurable (#3249)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2021-07-12 11:21:46 -04:00
chh
f86360d641
Fix Sentry integration bugs (#3325) 2021-07-12 09:42:51 -04:00
Sebastian Malton
77f8ea67bd
Cleanup sentry integration (#3315) 2021-07-08 16:57:29 -04:00
chh
05b1a2fc5d
Add Sentry to capture exceptions and console.error messages, add a checkbox in preference to enable/disable error reporting (#3252) 2021-07-08 19:22:12 +03:00
Sebastian Malton
3b31dadf19
Fix listing charts failing due to bad versions (#3308) 2021-07-08 11:35:54 -04:00
Sebastian Malton
497e47b277
Automatically sync all kubeConfigPaths (#3227) 2021-07-07 16:29:58 -04:00
Sebastian Malton
fe443f462b
Fix table columns being hidden after changing any user preference (#3302)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-07 15:48:00 -04:00
Sebastian Malton
a301283adc
Fix unhandled exception in visibility handler (#3291)
- If an KubernetesCluster entity is being deleted then the
  catalogEntityRegistry.getById() will return undefined. This leads to
  an unhandled exception in the handler because we tried to read
  apiVersion. This commit changes it so that we get the apiVersion and
  kind from KubernetesCluster class itself

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-07 09:30:07 +03:00
Sebastian Malton
0f9f79a8c9
Emit an error on async fromStore (#3285) 2021-07-06 11:05:07 -04:00
Sebastian Malton
803c3a3d34
Unblock subsequent Singleton.createInstance() (#3225)
- Also fix clusters with unknown workspaces

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-06 17:16:04 +03:00
Sebastian Malton
c4623c424d
Formalize the to/from Store rules for UserStore (#2708)
- Explicitly don't save to disk if the value in the store is the same as
  the default. That way we can change the defaults between versions

- Calculate the PreferencesModel on demand

- In the future, when we turn on strict null checking, we can enforce
  that the UserStore expects the correct types too

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

simplify default check, remove defaults from UserStore

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-06 09:14:13 -04:00
Sebastian Malton
2708ca63ed
Use kubeconfigPath for delete synced clusters confirmation (#3205)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-02 15:08:42 +03:00
Sebastian Malton
223dadc073
Allow users to disconnect from clusters that fail to connect (#3231)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-02 14:22:16 +03:00
Sebastian Malton
05311c4b1b
Correctly migrate duplicate clusters in workspaces (#3211)
- Keep track of the set of all workspaces that each duplicated entry was
  a part of

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-07-02 14:21:04 +03:00
chh
ce56dd812b
Add esbuild/esbuild-loader to reduce memory usage when make dev (#3220) 2021-06-30 08:05:02 -04:00
pashevskii
52828a4385
Fix using default hotbars (#3196)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2021-06-30 14:21:11 +03:00
Sebastian Malton
45cafaa420
Fix cluster-store and hotbar-store migrations (#3208)
- kubeConfigPath was erroniously set to cluster.id
- Skip empty workspace hotbars
- Output a warn if updating or creating a cluster throws in
  cluster-store

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-29 09:42:32 -04:00
Sebastian Malton
2788025fea
Switch to deterministic cluster IDs (#3201) 2021-06-28 11:14:55 -04:00
Sebastian Malton
dbfdd450a8
Track extension provisions and check bundled for routing (#3187)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-25 13:28:07 -04:00
Sebastian Malton
51655884c7
Fix hotbar migration of workspaces (#3178) 2021-06-25 09:55:25 -04:00
Jari Kolehmainen
f8dd7b12f2
Wait for extensions when doing protocol handler routing (#3159)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-06-23 08:48:43 -04:00
Sebastian Malton
65b9e74d45
Treat bundled extensions as enabled in protocol router (#3148)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-22 09:59:53 -04:00
Jari Kolehmainen
31b48fe245
Fix set of cluster entity icon src (#3134)
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-06-21 11:09:21 -04:00
Alex Andreev
d9ceb8fa08
General catalog category (#3106)
* Adding General Entities and General Category

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

* Usign material icons for general entities

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

* Setting background for hotbar icon explicitly

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

* Adding Catalog initially to first hotbar

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

* Tuning hotbar store tests

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

* Changing type from GeneralEntity to General

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

* Search for catalog hotbar item in tests

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

* Removing Catalog link from bottom bar

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

* Waiting for hotbar catalog entity

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

* Opening cluster list by data-testId

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

* Replacing types on interfaces

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

* Fixing integration tests

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

* Adding general entities throught initializers

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

* Removing icon refs from CatalogEntitySpec

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-06-21 10:59:54 +03:00
Sebastian Malton
4ff5a722a7
lens:// routing shouldn't ignore intree extensions (#3091)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-18 10:19:13 -04:00
Sebastian Malton
8a0cb2602b
ClusterStore.storedKubeConfigFolder should be usabled everywhere (#3105)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-18 08:44:40 -04:00
Sebastian Malton
7f51e3addd
Make CatalogEntity labels clickable (#3075)
- Transition workspace's to be labels

- Fix migrations to support multiple migrations for the same version

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-18 08:44:28 -04:00
Mario Sarcher
e9a89f396f
Rename Kubernetes Clusters in Catalog Menu to "Clusters" (#3099)
Signed-off-by: Mario Sarcher <mario@sarcher.de>
2021-06-18 12:58:30 +03:00
Jari Kolehmainen
7ba93c9c70
Implement missing weblink add/remove (#3092)
* implement weblink add/remove

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* refactor

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* css fix

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-06-18 11:23:01 +03:00
Sebastian Malton
eb45f45a7a
Add context menu entry for deleting local clusters (#2923) 2021-06-17 12:19:22 -04:00
Sebastian Malton
c3c944cd30
Send LensMainExtension.nagivate calls to renderer before navigating (#3082)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-17 12:59:27 +03:00
Jari Kolehmainen
3abb3bdcce
Bring back support for custom cluster icons (#3066)
* revive custom cluster icons

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix borders

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-06-16 07:12:10 +03:00
Alex Andreev
d14a3e4a6d
Adding Topbar extension registries (#2997)
* Move topbars to cluster manager

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

* Adding topBar extension registries

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

* topbar test clean up

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

* Removing unused class

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

* Expanding CSS Module typings

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

* Fixing welcomeURL path

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

* Remove unused import

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

* Fix TopBarRegistry references

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

* Fixing topbar test

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

* Init missing registry

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-06-14 07:40:14 +03:00
Sebastian Malton
280af6391e
Switch to more specific IPC helpers (#2821) 2021-06-10 10:34:22 -04:00
Sebastian Malton
6d10f011e5 Explicitly initialize registries
- Helps moves towards turning on banning CyclicImports

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-10 09:34:13 -04:00
Sebastian Malton
5ee2ab5b4a
Move all RouteParam's and URL builders to src/common (#2778)
- Prevents some circular dependencies

- Allowed main to use them as needed

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-10 08:52:09 -04:00
Sebastian Malton
a1a1c240e9
Split UserManagement into seperate Cluster and Namespace Roles and RoleBindings (#2755) 2021-06-09 13:40:55 -04:00
Jari Kolehmainen
3847a91758
Initial support for validating extension engines.lens version (#2884) 2021-06-09 09:24:58 -04:00
Sebastian Malton
6677e22371
Remove unnecessary 'onlyVisibleForSource' (#2982)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-09 07:01:26 +03:00
Sebastian Malton
88de530913
Cherry pick commits from 4.2 (#2953) 2021-06-07 08:39:16 -04:00
Sebastian Malton
817c8e00db
Simplify add cluster view (#2716)
- Only shows editor, and will save all text to file

- Reports some validation errors, but doesn't block the add cluster
  button

- Cleanup kube helpers to facilitate clearer FS interactions

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-07 08:14:43 -04:00
Jari Kolehmainen
0fb927f96b
catalog details panel (#2939)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-06-07 10:09:00 +03:00
Sebastian Malton
0d0c67f13f
Update docs to be correct with the new api changes (#2916)
* Update docs to be correct with the new api changes

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

* Fix renderer-extension.md

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-04 12:44:25 +03:00
Jari Kolehmainen
39149eedfd
Improve how kubernetes cluster status is resolved (#2909) 2021-06-03 08:43:08 -04:00
Sebastian Malton
5fd2d5501c
Add notification in renderer if lens protocol handler fails to find any routes (#2787)
- Add notifications on missing lens:// handlers, and invalid URIs

- add notifications on unknown entity IDs

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-06-01 08:28:38 -04:00
Sebastian Malton
36e8888ecb
Improve loading animation when switching release details (#2367)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-31 16:43:08 -04:00
Jari Kolehmainen
cd96842750
Typed catalog category events (#2812)
* typesafe catalog category events

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* use emit

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* rename events

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-31 08:09:57 +03:00
Sebastian Malton
847ba3f8eb
Fix: don't remove clear all of groupKinds when running disposer (#2835) 2021-05-28 09:10:01 -04:00
Roman
643b0d861f
Fix: cluster commands disappeared from Command Palette (#2886)
* Cluster commands disappeared from Command Palette, close #2760

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring: get rid of ClusterStore.active && ClusterStore.activeCluster (managed via catalog's entity)

Signed-off-by: Roman <ixrock@gmail.com>
2021-05-28 14:06:18 +03:00
Sebastian Malton
652319ac89
Refactor PrometheusProviders (#2707) 2021-05-27 09:50:18 -04:00
Sebastian Malton
45d74b8c3a
Remove getOrDefault from ExtendedObservableMap (#2836)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-25 09:20:26 -04:00
Roman
2c3b510997
Mobx-6 migration (#2718)
* mobx-6 migration -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- part 2 (npx mobx-undecorate --keepDecorators)

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- part 3 (more fixes)

Signed-off-by: Roman <ixrock@gmail.com>

* unwrap possible observables from IPC-messaging

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6 migration -- remove @autobind as class-decorator

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6: replacing @autobind() as method-decorator to @boundMethod

Signed-off-by: Roman <ixrock@gmail.com>

* mobx-6: use toJS()-wrapper since monkey-patching require(mobx).toJS doesn't work

Signed-off-by: Roman <ixrock@gmail.com>

* removed `@observable static`

Signed-off-by: Roman <ixrock@gmail.com>

* use {useDefineForClassFields: true} in tsconfig.json

Signed-off-by: Roman <ixrock@gmail.com>

* remove ExtendedObservableMap

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix: removed makeObservable(this) from "terminal-tab.tsx"

Signed-off-by: Roman <ixrock@gmail.com>

* storage-helper refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* normalize usages of #observable-value.toJSON() / attempt to catch the wind

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring, more possible branch fixes + lint

Signed-off-by: Roman <ixrock@gmail.com>

* debugging cluster-view error -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* fix: refreshing cluster-view on ready

Signed-off-by: Roman <ixrock@gmail.com>

* fix: various app-crashes related to KubeObject.spec.* access from "undefined"
fix: config-map-details crash

Signed-off-by: Roman <ixrock@gmail.com>

* fix: namespace-store refactoring / saving selected-namespaces to external json-file

Signed-off-by: Roman <ixrock@gmail.com>

* fix: don't cache mobx.when(() => this.someObservable) cause might not work as expected due later call of makeObservable(this) in constructor

Signed-off-by: Roman <ixrock@gmail.com>

* fix: app-crash on editing k8s resource

Signed-off-by: Roman <ixrock@gmail.com>

* fix: restore "all namespaces" on page reload

Signed-off-by: Roman <ixrock@gmail.com>

* - fix: persist table-sort params and cluster-view's sidebar state to lens-local-storage
- new-feature: auto-open main-window's devtools in development-mode (yes/no/ugly?)

Signed-off-by: Roman <ixrock@gmail.com>

* fix: crd definition details -> crashing with <AceEditor mode="json"> (added missing mode-file in ace-editor.tsx)

Signed-off-by: Roman <ixrock@gmail.com>

* fix: crd definitions -> groups selector couldn't deselect last selected option

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring: extensions-api exports clarification for "@k8slens/extensions"

Signed-off-by: Roman <ixrock@gmail.com>

* fix: various app-crashes related to kube-events (events page, some details page, overview, etc.)

Signed-off-by: Roman <ixrock@gmail.com>

* Reverted "use {useDefineForClassFields: true} in tsconfig.json" (various app-crash fixes)
This flag seems to be not possible to use with class-inheritance in some cases.

Example / demo:
`KubeObject` class has initial type definitions for the fields like: "metadata", "kind", etc.
and constructor() has Object.assign(this, data);
Meanwhile child class, e.g. KubeEvent inherited from KubeObject and has it's own extra type definitions for underlying resource, e.g. "involvedObject", "source", etc.

So calling super(data) doesn't work as expected for child class as it's own type definitions overwrites data from parent's constructor with `undefined` at later point.

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge lint-fixes

Signed-off-by: Roman <ixrock@gmail.com>

* catalog.tsx / catalog-entities.store.ts refactoring & fixes

Signed-off-by: Roman <ixrock@gmail.com>

* fix: Catalog -> Browse all tab

Signed-off-by: Roman <ixrock@gmail.com>

* fix: CommandPalette doesn't appear from global menu by click/hotkey

Signed-off-by: Roman <ixrock@gmail.com>

* - Merging interfaces & classses to avoid overwriting fields from parent's super(data)-call with Object.assign(this, data). Otherwise use "declare" keyword at class field definition.

- Revamping {useDefineForClassFields: true} to avoid issues with non-observable class fields in some cases (from previous commit):

```
@observer
export class CommandContainer extends React.Component<CommandContainerProps> {
  // without some defined initial value "commandComponent" is non-observable for some reasons
  // when tsconfig.ts has {useDefineForClassFields:false}
  @observable.ref commandComponent: React.ReactNode = null;

  constructor(props: CommandContainerProps) {
    super(props);
    makeObservable(this);
  }
```

Signed-off-by: Roman <ixrock@gmail.com>

* update KubeObject class type definition

Signed-off-by: Roman <ixrock@gmail.com>

* clean up / responding to comments

Signed-off-by: Roman <ixrock@gmail.com>

* fix: app-crash when navigating to catalog from active cluster-view, refactoring `catalog-entity-store`

Signed-off-by: Roman <ixrock@gmail.com>

* catalog-pusher clean up, replaced .observe_() to external observe() helper from "mobx"

Signed-off-by: Roman <ixrock@gmail.com>

* fix: catalog's items stale/non-observable (after connection to the cluster status still "disconnected"), lint-fixes

Signed-off-by: Roman <ixrock@gmail.com>

* fix: Catalog is empty after closing main-window and re-opening app from Tray

Signed-off-by: Roman <ixrock@gmail.com>

* fix: HotBar's icon context menu items non-observable (no "disconnect cluster", etc.)

Signed-off-by: Roman <ixrock@gmail.com>

* lint-fix/license check

Signed-off-by: Roman <ixrock@gmail.com>

* fix: redirect to catalog when disconnecting active cluster

Signed-off-by: Roman <ixrock@gmail.com>

* fix: refresh visibility of active cluster-view on switching from hotbar/catalog

Signed-off-by: Roman <ixrock@gmail.com>

* updated package.json for built-in extensions to use "*" version for packages served from main app

Signed-off-by: Roman <ixrock@gmail.com>

* - added missing makeObservable(this) to metrics-settings.tsx
- updated package-lock.json for built-in extensions
- lint fixes

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge clean up fix, updated package-lock.json for built-in extensions after `make clean-extensions && make build-extensions`

Signed-off-by: Roman <ixrock@gmail.com>

* fix unit-tests

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge fixes

Signed-off-by: Roman <ixrock@gmail.com>

* make lint happy

Signed-off-by: Roman <ixrock@gmail.com>

* reverted some changes, removed auto-opening devtools in dev-mode

Signed-off-by: Roman <ixrock@gmail.com>

* merge fixes

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge conflict fixes:
- proper handling and navigating into catalog's active category via URL-builder

Signed-off-by: Roman <ixrock@gmail.com>

* reverting splitted params for catalog's page route to "/catalog/:group?/:kind?"

Signed-off-by: Roman <ixrock@gmail.com>

* clean-up: remove app's injecting dependencies from `extensions/kube-object-event-status/package.json`

Signed-off-by: Roman <ixrock@gmail.com>

* master-merge fix: added missing makeObservable(this) for extensions.tsx

Signed-off-by: Roman <ixrock@gmail.com>

* fix: catalog entity context menu stale/unobservable

Signed-off-by: Roman <ixrock@gmail.com>

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-25 10:24:31 +03:00
Jari Kolehmainen
1664b393ee
Refactor CatalogEntityRegistry from common to main (#2824)
* refactor CatalogEntityRegistry from common to main

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* test fix

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-20 15:02:55 +03:00
Sebastian Malton
b61ba7ef71
Filter out unknown catalog entities (#2816)
* Filter out unknown catelog entities

- Keep raw data

- But filter unknown types until a category is registered

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

* fix unit tests

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

* simplify tests

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

* Remove getOrDefault, consolodate ExtendedMap

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-05-20 08:50:51 +03:00
Sebastian Malton
5ed4537979
Turn on noUnusedLocals, noImplicitReturns, importsNotUsedAsValues: error, and isolatedModules (#2777) 2021-05-19 12:11:54 -04:00
Jari Kolehmainen
683e5926e0
Show lens-metrics on cluster settings (#2714)
* show lens-metrics on cluster settings

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* remove ClusterFeature

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* remove ClusterFeature

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* tweak resource applier/stack

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* update metrics stack components

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix drawer menu styles

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* clarify ui

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* built-in -> bundled

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* splitterError -> splitError

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* support multi-doc yamls

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* dedicated action button

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix headers

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* async file operations

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix bugs

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-18 16:12:45 +03:00
chh
d9c6e5c52f
Catalog entity WebLink.kind 'KubernetesCluster' > 'WebLink' (#2799)
Signed-off-by: Hung-Han (Henry) Chen <chenhungh@gmail.com>
2021-05-18 14:13:07 +03:00
Jari Kolehmainen
b6b1b467e0
Add connect/disconnect methods to KubernetesCluster kind (#2758)
* add connect/disconnect methods to kubernetes cluster

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* return void

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-18 13:42:33 +03:00
Jari Kolehmainen
752f49821a
Show active item in hotbar & allow to pin/unpin (#2790)
* show active item in hotbar & allow to pin it

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix styles

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-05-18 13:13:33 +03:00