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

49 Commits

Author SHA1 Message Date
Sebastian Malton
4c975d8a7e Add auto cluster icon color picking
- Fix not handling grapheme clusters on cluster names

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-03-12 16:34:57 -05:00
Jari Kolehmainen
4bc4fe3a24
Fix accessible namespaces reset on cluster disconnect (#2140)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-12 16:24:02 +02:00
Jari Kolehmainen
317c4cf072
Fix accessible namespaces functionality under restrictive RBAC (#2138)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-12 14:25:17 +02:00
Roman
5287e7e528
KubeObjectStore & KubeWatchApi fixes and optimizations (#2063)
* Detach NamespaceStore from KubeWatchApi, proper KubeObjectStore.loadAll (rebase of #2033)

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

* Watch-api requests optimization (#2066)

* subscribe for watching resources in single request when has admin-like access rights

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

* responding to comments

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

* fix unit-tests

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

* fix: reloading stores when preloading enabled and waitUntilLoaded=false

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

* mark Cluster.canUseWatchApi() and Cluster.refreshAccessibility() as private

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

* fix unit test: make public Cluster.canUseWatchApi()

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

* responding to comments in #2066

Signed-off-by: Roman <ixrock@gmail.com>
2021-02-04 11:51:35 +02:00
Roman
f8c111ddd8
Load k8s resources only for selected namespaces (#1918)
* loading k8s resources into stores per selected namespaces -- part 1

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

* loading k8s resources into stores per selected namespaces -- part 2
- fix: generating helm chart id

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

* loading k8s resources into stores per selected namespaces -- part 3

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

* fixes

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

* fixes / responding to comments

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

* chore / small fixes

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

* fixes & refactoring

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

* make lint happy

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

* reset store on loading error

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

* added new cluster method: cluster.isAllowedResource

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

* fix: loading namespaces optimizations

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

* fixes & refactoring

Signed-off-by: Roman <ixrock@gmail.com>
2021-01-22 13:18:46 +02:00
Lauri Nevala
0117cecc33
Prevent initializing clusters multiple times (#1950)
* Prevent initializing clusters multiple times

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

* Do not expose intializing to cluster state

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

* Convert initializing to observable and ensure it is set to false after init

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-01-15 16:11:41 +02:00
Jari Kolehmainen
24b5d2dff9
Optimise Cluster.getAllowedResources() (#1830)
* optimise Cluster.getAllowedResources()

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

* make it faster (max 5 concurrent requests)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-22 16:09:52 +02:00
Jari Kolehmainen
8f27559053
Tag cluster & workspace as beta features in extension api (#1589)
* mark cluster & workspace as beta

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

* back to public

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-07 13:38:40 +02:00
Jari Kolehmainen
67f3f83610
Performance fix when cluster has lots of namespaces (#1640)
* performance fix when cluster has lots of namespaces

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

* fix tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-03 14:56:32 +02:00
Panu Horsmalahti
dcf253e7d5
Add eslint rule padding-line-between-statements (#1593)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-02 09:55:52 +02:00
Jari Kolehmainen
4161ee832c
Hide disabled workspaces/clusters (#1573)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-01 15:27:54 +02:00
Sebastian Malton
7451869c25
add no-unused and react/recommended to eslint (#1523)
* add no-unused-vars and no-unused-imports

* added quotes: double, and remove ignore pattern

* move itif and describeif into utils

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-27 08:48:38 -05:00
Lauri Nevala
badabff90e
Store prometheus cluster metadata based on metrics request responses (#1438)
* Store prometheus metadata for clusters based on metrics requests

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

* Use ClusterMetadataKey.PROMETEHUS as key

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

* Update metadata only if it is changed

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

* Use structural comparer as default for store sync reaction

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

* No need to compare metadata as json anymore

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

* Use structural comparer only in cluster-store

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

* Refactoring

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

* React only prometeheus preference changes to re-initialise prometheus connection

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

* Add missing semicolons

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

* Fix imports

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

* Report metrics status in cluster-report (#1443)

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

* Apply suggestions from code review

Co-authored-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Fix logger reference

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

Co-authored-by: Sebastian Malton <sebastian@malton.name>
2020-11-26 09:41:47 +02:00
Jari Kolehmainen
8739baab5b
Replace cluster warning event polling with watches (#1521)
* replace cluster warning event polling with watches

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

* cleanup

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

* fix loadAll calls

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

* tweak

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-26 09:39:16 +02:00
Panu Horsmalahti
460dfe4d2b Use @typescript-eslint/semi.
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-19 18:12:52 +02:00
Panu Horsmalahti
1477bb8274 Enforce semicolons in eslint
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-19 16:35:04 +02:00
Jari Kolehmainen
5589a99e7e
Fix TypeError: Cannot read property 'stopServer' of undefined (#1440)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 13:48:43 +02:00
Jari Kolehmainen
5aaacb21f9
Refactor ipc module (#1225)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 11:48:13 +02:00
Lauri Nevala
04517148c0
Add computed name property to cluster (#1428)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 09:12:11 +02:00
Sebastian Malton
25be6401e2
cleanup main side of metrics route for readability (#988)
* cleanup main side of metrics route for readability

* split out ??= for headers

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-16 10:43:53 -05:00
Sebastian Malton
d0ada00a18
Add mechanism for users to specify accessible namespaces (#702)
* Add mechanism for users to specify namespaces that are accessible to them. This is generally useful for when the user doesn't have permission to list the namespaces.

- Add new component "EditableList" which provides a simple way to
  display a list of items that can be added too.

- Add the ClusterAccessibleNamespaces to the GeneralClusterSettings

- style editable list list of lists, switch to using <>

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

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-11-09 10:45:09 -05:00
Jari Kolehmainen
c7f77a01f9
Fix UI staleness after network issues (#1192)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 14:51:04 +02:00
Jari Kolehmainen
4a6553967d
Improve how extensions can manage cluster/workspace stores (#1176)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 09:45:09 +02:00
Jari Kolehmainen
62ae7771df
Allow extensions to define cluster features (#1125)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-26 08:21:22 +02:00
Lauri Nevala
ce995f3deb
Implement cluster metadata detectors (#1106)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-22 21:45:54 +03:00
Lauri Nevala
daa4992f2b
Start authentication proxy when opening cluster settings (#1063)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-12 10:10:30 +03:00
Sebastian Malton
0960259279
Add some basic unit tests for the following files: (#1050)
* Add some basic unit tests for cluster, kube-auth-proxy, and kubeconfig-manager

- src/main/cluster.ts
- src/main/kube-auth-proxy.ts
- src/main/kubeconfig-manager.ts

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-10-09 11:25:20 -04:00
Lauri Nevala
abe6a4e0b1
Fix cluster dashboard opening when cluster is initally offline (#1042)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-07 15:27:48 +03:00
Lauri Nevala
135282da91
Fix cluster dashboard opening and state refreshing (#1006)
* Fix cluster dashboard opening and state refreshing

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-01 11:16:20 +03:00
Jari Kolehmainen
11ea9d2098
Fix iframe ipc flakyness after cluster is removed (#954)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-24 15:24:39 +03:00
Lauri Nevala
299eceaee4
Optimise cluster activate and refresh (#938)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-21 13:20:50 +03:00
Jari Kolehmainen
c2afd026cc
Inject Host header to k8s client requests (#887)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-16 20:54:36 +03:00
Lauri Nevala
ec4d859ef7
Remove extra refreshEvents polling (#892)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-16 16:11:40 +03:00
Lauri Nevala
77895d40b0
Move verbose log lines to silly level (#859)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-11 14:11:36 +03:00
Roman
7722f443eb
[FIX]: Cluster dashboard not rendered (#848)
* Cluster dashboard not rendered, fix #811

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

* refactoring

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

* actual fix

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

* reverted back reconnect check in cluster.activate()

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

* fix: cluster.activate() should not start reconnect on init (if not accessible)

Signed-off-by: Roman <ixrock@gmail.com>
2020-09-11 12:02:25 +03:00
Lauri Nevala
e005985621
Fix cluster's apiUrl (#846)
* Fix cluster's apiUrl

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-10 15:15:00 +03:00
Sebastian Malton
8f94f4a3da
add drag and drop capabilities for the order of cluster icons on the side bar (#623)
* add drag and drop capabilities for the order of cluster icons on the side bar

* add type annotations for better clarity

* fix clusters staying in previously icon reordered workspaces

* add some tests to cluster-store

Signed-off-by: Sebastian Malton <smalton@mirantis.com>

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-09-04 13:32:27 -04:00
Lauri Nevala
61c3e32a7c
Try to reconnect non-accessible clusters on activate (#789)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-02 15:28:02 +03:00
Lauri Nevala
659d8bd0ab
Wait until cluster is ready before initializing cluster dashboard (#748)
* Wait until cluster is ready before initializing cluster dashboard

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-08-27 08:43:17 +03:00
Roman
5670312c47
Migrating Vue components to React and stores refactoring (#585)
Signed-off-by: Roman <ixrock@gmail.com>

Co-authored-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Sebastian Malton <smalton@mirantis.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-08-20 08:53:07 +03:00
Jussi Nummelin
55687b7d35
Kubeconfigs as file references (#466)
Signed-off-by: Jussi Nummelin <jussi.nummelin@gmail.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-07-03 16:53:23 +03:00
Roman
b7974827d2
Lens restructure (#540)
Signed-off-by: Roman <ixrock@gmail.com>
2020-06-30 14:35:16 +03:00
Adam Malcontenti-Wilson
e21e0b577b
Replace admin check with check for access (#297)
Signed-off-by: Adam Malcontenti-Wilson <adman.com@gmail.com>
2020-05-09 18:25:34 +03:00
Lauri Nevala
bba6eb743d
Add support for Prometheus api prefix (#341)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-05-06 20:37:32 +03:00
Jari Kolehmainen
5c1974f07b
Auto-detect prometheus installation (#343)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-05-06 18:55:49 +03:00
Lauri Nevala
724cf0c687
Allow to select Prometheus query style (#312)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-05-01 09:37:05 +03:00
Jari Kolehmainen
260de08c72
Update metrics feature components (#301)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-04-28 08:41:04 +03:00
Jari Kolehmainen
5c2e64b487
Add kubectl/helm download mirror select to preferences (#185)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-04-01 07:19:10 +03:00
Jari Kolehmainen
1d0815abd2
Lens app source code (#119)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-03-15 09:52:02 +02:00