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

433 Commits

Author SHA1 Message Date
Sebastian Malton
8d74f1c759
Fix tailCount renderering in removeItemsDialog (#2148)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-15 07:25:34 +02:00
Jari Kolehmainen
f4a3074926
Fix events list default sort column (#2149)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-13 09:33:04 +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
Alex Andreev
d40bd0c7d0
Making error boundary layout responsive (#2124)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-02-12 10:19:52 +03:00
Jari Kolehmainen
f14f3b3287
Cleanup iframe when cluster is disconnected (#2120)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-11 17:36:47 +02:00
Roman
b873ba76bd
Fix: compact-mode for Workloads overview -> Events (#2113)
fix: proper event-type column + default sorting by warning events

Signed-off-by: Roman <ixrock@gmail.com>
2021-02-11 13:56:20 +02:00
Jari Kolehmainen
22176219f0
Don't show warning badge if cluster is offline (#2121)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-11 12:23:33 +02:00
Alex Andreev
c0ef006cb8
Fix: preventing namespace filter jumping scroll (#2104)
* fix lint

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

* fixes & refactoring

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

* fix lint, micro-refactoring

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

* more refactoring, clean up, responding to comments

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

* fix: remove extra check for cluster.allowedApi from processing buffered watch-api events

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

* refactoring, detaching NamespaceStore from KubeObjectStore

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

* fix: wait for contextReady in NamespaceStore

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

* refactoring & fixes

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

* fix lint

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

* fixes: reloading context stores on NamespaceSelect-change

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

* optimize loading all resources when "all namespaces" selected -> single request per resource (when have rights)

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

* use native k8s api watches

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

* retry watch when it makes sense

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

* workaround for browser connection limits

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>

* use always random subdomain for getResponse

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

* resubscribe stores on contextNamespace change

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

* fix

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

* modify watch event before calling callback

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

* Replace placeholder component in NamespaceSelectFilter

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

Co-authored-by: Roman <ixrock@gmail.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-11 10:32:57 +03:00
Jari Kolehmainen
b144eb916b
Remove unnecessary subscribeStores from cluster overview (#2108)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-10 14:27:48 +02:00
Sebastian Malton
a61425124f
Add auto-update notifications and confirmation (#1941)
* add auto-update notifications and confirmation

* Show single update notification (#1985)

* Moving notification icons to top (#1987)

* Switch to EventEmitter (producer&consumer) model

* Add `onCorrect` and `onceCorrect` to ipc module for typechecking ipc  messages

* move type enforced ipc methods to seperate file, add unit tests

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-09 10:47:24 -05:00
Roman
741973dd29
Fix: export Dialog to extensions-api (#2105)
Signed-off-by: Roman <ixrock@gmail.com>
2021-02-09 17:33:27 +02:00
Jari Kolehmainen
035dd470ef
Refactor watches to use native k8s api (#2095)
* fix lint

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

* fixes & refactoring

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

* fix lint, micro-refactoring

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

* more refactoring, clean up, responding to comments

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

* fix: remove extra check for cluster.allowedApi from processing buffered watch-api events

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

* refactoring, detaching NamespaceStore from KubeObjectStore

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

* fix: wait for contextReady in NamespaceStore

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

* refactoring & fixes

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

* fix lint

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

* fixes: reloading context stores on NamespaceSelect-change

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

* optimize loading all resources when "all namespaces" selected -> single request per resource (when have rights)

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

* use native k8s api watches

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

* retry watch when it makes sense

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

* workaround for browser connection limits

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>

* use always random subdomain for getResponse

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

* resubscribe stores on contextNamespace change

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

* fix

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

* modify watch event before calling callback

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

Co-authored-by: Roman <ixrock@gmail.com>
2021-02-09 15:31:15 +02:00
Violetta
b36d9ff418
Helm rollback window with more details (#2085)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2021-02-05 12:23:15 -05:00
Lauri Nevala
e6c90c28cc
Return no metrics immediately if chartData.datasets are missing (#2082)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-02-04 19:44:28 +02:00
Roman
b514e5c833
proper select-all option for NamespaceSelect (#2084)
Signed-off-by: Roman <ixrock@gmail.com>
2021-02-04 19:24:39 +02:00
Sebastian Malton
0727456aa1
Convert StatusBarRegistration to use components field (#1598)
* Convert StatusBarRegistration to use components field

- More similar to all other *Registration types for extensions

- Simpler fix for using the components.Icon type, now accepts functions
  that return component instance like all other *Registration types

- Kept old fix for backwards compatability

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

* fix docs

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-02-04 19:18:31 +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
1b492f27ad
Allow to quick select/deselect all namespaces in NamespaceSelect (#2068)
* allow to quick select/deselect all namespaces in `NamespaceSelect`

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

* fixes & refactoring

Signed-off-by: Roman <ixrock@gmail.com>
2021-02-03 19:01:45 +02:00
Jameel Al-Aziz
a2f4fac720
Allow namespace to specified on role creation (#2020)
* Allow users to specify the namespace when creating a custom role.
* Default role namespace remains the "global" namespace allowing for
  cluster role creatoin.

Signed-off-by: Jameel Al-Aziz <me@jalaziz.io>
2021-02-02 14:53:46 +02:00
Jari Kolehmainen
b5e7be7591
Initial command palette feature (#1957)
* wip: command palette

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

* register shortcut to global menu

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

* introduce openCommandDialog & closeCommandDialog

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

* fix ipc broadcast to frames from renderer

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

* tweak

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

* add more commands

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

* cleanup

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

* ipc fix

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

* add integration tests

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

* ipc fix

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

* implement workspace edit

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

* workspace edit fixes

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

* make tests green

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

* fixes from code review

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

* cleanup ipc

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

* cleanup CommandRegistry

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

* ipc fix

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

* fix ClusterManager cluster auto-init

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

* ensure cluster view is active before sending a command

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

* switch to last active cluster when workspace change

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

* tweak integration tests

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

* run integration tests serially

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

* cleanup

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

* fixes based on code review

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

* cleanup

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

* cleanup more

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

* cleanup

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

* add workspace fixes

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

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-02 12:34:13 +02:00
Alex Andreev
9e1487685c
Fix: charts stripes alignment (#2054)
* Align chart stripe on every dataset update

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

* Removing default stripes interval

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-02-02 11:45:45 +03:00
Roman
078f952b36
Watch-api streaming reworks (#1990)
* 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>

* Watch api does not work for non-admins with lots of namespaces #1898 -- part 1

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>

* fix: parse multiple kube-events from stream's chunk

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

* fix: mobx issue with accessing empty observable array by index (removes warning), use common logger

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

* fine-tuning

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

* fix: parse json stream chunks at client-side (might be partial, depends on network speed)

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

* store subscribing refactoring -- part 1

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

* store subscribing refactoring -- part 2

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

* store subscribing refactoring -- part 3

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

* store subscribing refactoring -- part 4

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

* auto-reconnect on online/offline status change, interval connection check

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

* check connection every 5m

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

* split concurrent watch-api requests by 10 at a time + 150ms delay before next call

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

* refactoring / clean up

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

* use `plimit` + delay for k8s watch requests

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

* lint fix

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

* added explicit `preload: true` when subscribing stores

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

* kubeWatchApi refactoring / fine-tuning

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

* clean up

Signed-off-by: Roman <ixrock@gmail.com>
2021-02-01 15:49:32 +02:00
Alex Andreev
79234dcbf9
Fix jest window.matchMedia() error warnings (#2037)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-29 08:18:25 +02:00
Alex Andreev
3640f313b3
Enabling configurable columns for all major tables (#2029)
* Configurable columns in Deployments table

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

* Configurable columns in DaemonSets table

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

* Configurable columns in StatefulSets table

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

* Configurable columns in ReplicaSets table

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

* Configurable columns in Jobs table

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

* Configurable columns in CronJobs table

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

* Configurable columns in Nodes table

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

* Configurable columns in ConfigMaps table

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

* Configurable columns in Secrets table

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

* Configurable columns in ResourceQuota table

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

* Configurable columns in LimitRanges table

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

* Configurable columns in HPAs table

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

* Configurable columns in PodDistributionBudget table

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

* Configurable columns in Services table

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

* Configurable columns in Endpoints table

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

* Configurable columns in Ingresses table

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

* Configurable columns in NetworkPolicies table

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

* Configurable columns in Storage section

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

* Configurable columns in Namespaces table

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

* Configurable columns in Events table

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

* Configurable columns in Apps section

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

* Configurable columns in Access Control section

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

* Configurable columns in CRDs tables

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-28 12:18:45 +03:00
Jari Kolehmainen
e3db77f7ab
Better extensionRoutes.keys() iteration (#2031)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-27 20:05:12 +02:00
Alex Andreev
a157eb03e6
Generic logs view with Pod selector (#1984)
* Adding LogTabStore

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

* Adding Pod selector in logs tab

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

* Refresh containers on pod change

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

* Adding <LogResourceSelector /> tests

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

* Adding LogTabStore tests

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

* Clearn getPodsByOwnerId method

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

* Extracting dummy pods into mock file

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

* Eliminating containers and initContainers from store

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

* Refreshing tab pods if pod amount is changed in store

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

* A bit of cleaning up, fixing tests

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

* Fix lint newline errors

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

* Return getPodsByOwner() method

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

* Rename log tab when pod changes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-27 17:20:02 +03:00
Jari Kolehmainen
724c6c3265
Fix extension cluster submenu re-render (#1996) (#2027)
* fix extension cluster pages re-render when they are registered as a sub-menu item

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

* lint fix

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

* refactor

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-27 16:15:13 +02:00
Alex Andreev
9191d6bfd9
Always shows .menu table column (#2024)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-26 16:30:26 +03:00
Alex
9da349ce42
Display CPU usage percentage with 2 decimal points (#2000)
Signed-off-by: Alex Culliere <alozhkin@mirantis.com>
2021-01-22 16:51:42 +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
Alex Andreev
a92ed46f0d
Fixing tolerations list layout (#2002)
* Expanding tolerations div width

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

* Adding tolerations table

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

* Fixing tolerations table styles

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

* Adding <PodTolerations/> tests

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

* Add new line at the end of the file for linter

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-22 10:27:54 +03:00
Sebastian Malton
2e2283bcc9
enfore unix line endings and always ending files with line endings (#1997)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-01-21 08:09:41 -05:00
Alex Andreev
64be4ee948
Fixing log tab layout colors (#1995)
* Making "since" date visible as bolded text

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

* Fixing colors in log tab elements

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-21 10:38:49 +03:00
Alex
55759fb3b8
Add age column to cluster overview (#1970)
Signed-off-by: Alex Culliere <alozhkin@mirantis.com>
2021-01-20 14:31:20 +02:00
Alex Andreev
83ed44f670
Adding logs tab bottom toolbar (#1951)
* Adding bottom toolbar to logs tab

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

* Making bottom toolbar responsive

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

* Using generic search input clear button

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

* Fixing log test selectors

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-15 11:34:11 +03:00
Violetta
c48816ca5c
Add support for LimitRange (#1796)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2021-01-14 11:49:39 +03:00
pashevskii
12c538b0eb
Column filters (#1532)
* Column filters

Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>

* Add showWithColumn property

Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2021-01-13 10:38:20 +03:00
Alex Andreev
b1ab31831f
Fixing multiline logs wrapping (#1938)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-01-12 09:50:35 +03:00
Roman
b547541ea8
fix: events pages renders incorrect tooltip as non-parsed template (#1919)
Signed-off-by: Roman <ixrock@gmail.com>
2021-01-08 17:01:23 +02:00
Sebastian Malton
3fc552a466
remove array desctructor of Object.values, which is brittle (#1854)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-01-08 09:41:30 -05:00
Jari Kolehmainen
02bc210f56
Catch xtermjs fit error (#1907)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-07 13:06:23 +02:00
MIchael Bowen
2543e4aec7
Fix encoding typo in ClusterAccessibleNamespaces component title (#1901)
Signed-off-by: mbowen <mbowen@blackrock.com>
2021-01-07 09:00:32 +02:00
Jari Kolehmainen
8823b1913f
Reset stores before loading them (#1897)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-07 07:25:00 +02:00
Jari Kolehmainen
06d41acc26
Fix Electron 9.4 frame ipc bug (#1888)
* use pid+frameId

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

* use correct process id

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-01-04 14:16:35 +02:00
Sebastian Malton
981ca3ba3d
add version display to extensions (#1604)
* add version display to extensions

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

* use new format

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

* fix styling

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-30 10:47:22 +03:00
Alex Andreev
e9296286bd
Fix long list cropping in sidebar (#1877)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-30 09:14:01 +02:00
Violetta
fd63f2f4e3
Add suspend/resume button for CronJobs (#1860)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-12-29 17:19:23 +02:00
Jari Kolehmainen
a03da3c572
Remove lingui (#1874)
* remove lingui

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

* babelless

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

* tweak ts-loader options

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

* tweak renderer webpack config

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-29 14:53:34 +02:00
Alex Andreev
050603a7b3
Applying dark colors to dock regardless of active theme (#1873)
* Appliying dark colors on dock contents

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

* Fix lint error

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-29 13:54:22 +03:00
Lauri Nevala
cfbe4219d5
Show toolitp for node name in the nodes list (#1841)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-29 09:22:44 +02:00
Alex Andreev
5d746cdff5
Dock tabs context menu (#1863)
* Adding context menu to dock tabs

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

* Allowing to open menu by contextmenu event

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

* Adding DockTab tests with fine-tuning jest config

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

* Adding disable state to menu items

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

* Removing empty lines

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

* Moving jest-canvas-mock to dev dependencies

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-28 15:18:03 +03:00
pashevskii
a325ffd610
Clear Add Namespace and Add secret form data on close (#1771)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-12-28 12:20:33 +03:00
Mario Sarcher
00c2c2c3c9
Catch HTTP Errors in case pod metrics resources do not exist or access is forbidden (#1755)
Signed-off-by: Mario Sarcher <msarcher@mirantis.com>

Add proper error message when catching a error during loadKubeMetrics()

Co-authored-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Mario Sarcher <msarcher@mirantis.com>

Co-authored-by: Mario Sarcher <msarcher@mirantis.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2020-12-28 11:06:16 +02:00
Lauri Nevala
ffa48b32d1
Check is persistent volume claims resource to allowed for user (#1850)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-28 08:08:11 +02:00
Alex Andreev
eb5a775a2d
Preserving line breaks when copiyng logs (#1851)
* Adding line break after log each log line

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

* Adding comment for line break

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-23 15:20:57 +03:00
Jari Kolehmainen
bfa4970389
Workloads overview: don't block on store load (#1829)
* workloads overview: don't block on store load

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

* subscribe after loadAll

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-23 13:12:05 +02:00
Alex Andreev
507c485113
Fixing logs scrolling state (#1847)
* Passing raw logs to PodLogs child components

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

* Avoid autoscrolling while user is scrolling

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

* Removing status panel from log controls

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-23 11:51:43 +03:00
Roman
be4e1aa15c
Navigation refactoring, handling extension page params (#1651)
* decentralizing page url-params management -- PoC / tsc 4.1 random fixes

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

* fixes, tweak example-extension for demo

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

* lint fixes, revert tests

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

* removed occasional changes related to typescript 4.1

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

* updated example with 2 menu-items targeting same page with different params

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

* fix: merge page url chunks with native URL()-api, simplified default page-params registration

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

* fix: make lint happy

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

* fix: unit-tests

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

* renaming by jim's request: UrlParam => PageParam (type), createUrlParam => createPageParam (helper)

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

* fix: reverting NamespaceStore public-api breaking changes

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

* lint fix

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

* fine-tuning

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

* yes, lint always unhappy

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

* fix build

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

* small fixes

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

* fix merge-conflicts

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

* removed `isSystem` page-param's init field exposed to extensions-api

Signed-off-by: Roman <ixrock@gmail.com>
2020-12-22 15:29:25 +02:00
Lauri Nevala
11c611dabe
Display node column in pods list (#1832)
* Display node column in pods list

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

* Adding flat option to <Badge />

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

* Removing <Span /> component

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

* Using badge with tooltips in pods list

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

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-22 15:45:30 +03:00
Jari Kolehmainen
270fadf6fe
Fix namespace store subscribe (#1826)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-22 07:43:34 +02:00
Lauri Nevala
e8f36e97a3
Parse jsonPath expressions (#1793)
* Fix jsonPath calls by removing \ characters and using $..[] notation

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

* Parse jsonPath properly

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

* Cleanup

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

* More cleanup

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

* Improve parsing

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

* Finetuning

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

* Stringify children only if value is object or array

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

* Test other escaped characters do not cause issues

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-21 22:16:57 +02:00
Jari Kolehmainen
c8a93414b2
Render node list before metrics are available (#1827)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-21 22:15:08 +02:00
Alex Andreev
42817a6d97
Fix: expand/collapse state for CRD sidebar items (#1751)
* Moving SidebarNavItem component to its own file

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

* Using id prop to preserve expanding state

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-18 15:42:10 +02:00
nyako
733fc8a658
fix "not valid as a React child" error while display crds with column which type is object (#1772)
Signed-off-by: liuhongyu <lhy990409@gmail.com>
2020-12-17 08:24:57 -05:00
Violetta
abd4223675
Add information about the startupProbe (#1538)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-12-13 19:08:26 +02:00
Jari Kolehmainen
3b65019dcb
Use correct apiversion for HPA details (#1745)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-11 13:13:40 +02:00
Jari Kolehmainen
ff9e96d880
Fix buggy node metrics/chart (#1748)
* fix buggy node metrics/chart

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

* fix linter error

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-11 11:21:35 +02:00
Alex Andreev
b33629d24f
Replace cronjob api version to batch/v1beta1 (#1747)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-11 11:21:43 +03:00
Alex Andreev
a61e20965d
ClusterOverview page refactorings (#1696)
* ClusterOverview page refactorings

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

* Minor test fix for MainLayoutHeader

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

* Replacing class name in tests

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

* Remove unnecessary parenthesis

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-11 07:36:47 +02:00
Violetta
961a38d52f
Fix Deployment Scale Button "minus" (#1728)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-12-10 21:18:30 +02:00
Violetta
d143b234b7
Full support for ReplicaSets (#1704)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-12-10 15:23:51 +03:00
Alex Andreev
0facd34738
Fixing logs autoscroll behavior (#1720)
* Fixing autoscroll behavior

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

* Making statement simpler to read

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-09 21:03:16 +03:00
Panu Horsmalahti
ec0a90343e
Remove broken symlink from node_modules on uninstall (#1695)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-08 21:04:01 +02:00
pashevskii
b7e5fb78d9
Add posibility to add custom repository (#1368)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-12-08 15:54:49 +03:00
Jari Kolehmainen
8a4be72740
Register cluster page component properly to a route (#1688)
* remove observer from app class

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

* proper fix

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-08 13:21:18 +02:00
Alex Andreev
665ed94128
Adding cluster settings icon into dashboard (#1672)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-08 10:31:58 +03:00
Panu Horsmalahti
ea98d68e08
Visualize extension loading (#1635)
* Visualize extension loading

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-04 16:51:28 +02:00
Sebastian Malton
b342ea0bd6
store more than largest kube api request amount in the event store (#1605)
* store more than largest kube api request amount in the event store

* not abstract, give default

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-04 09:48:56 -05:00
Sebastian Malton
cb954e6575
persist extension installation state for the duration of the window's life (#1602)
* persist extension installation state for the duration of the window's life

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-04 09:25:37 -05:00
Alex Andreev
afc4ca0ee1
Fixing itemId in SidebarNavItem (#1638)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-04 10:25:11 +03:00
Lauri Nevala
f95c2d1c91
Add timeout to app start and cluster add events (#1631)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-03 20:01:06 +02:00
Sebastian Malton
4e8fb65a2e
fix URL validator, add some tests (#1627)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-03 08:49:51 -05:00
Lauri Nevala
3aa66eac05
Open file select dialog from onClick event (#1637)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-03 15:48:01 +02:00
Jari Kolehmainen
29f2497d48
Respect static list of allowed namespaces (#1639)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-03 15:22:47 +02:00
Alex Andreev
6630419457
Fine-tuning extensions page view (#1613)
* Replacing pro-tip text

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

* Coloring extension name

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

* Eslint fixes in webpack files

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-12-03 08:08:50 +02:00
Sebastian Malton
bcb6f7469b
actually use ResourceQuotaDetails (#1621)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-02 10:27:27 -05:00
Violetta
c22d569fe2
Add Ready status column in the Deployment view (#1586)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-12-02 13:55:54 +03:00
chh
f6a88b386f
Add <BottomBar /> support rendering if item is a function (#1606)
* Support rendering if item is a function

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-12-02 17:49:12 +08:00
Panu Horsmalahti
4d754f6f26
Disable extension install button immediately (#1591)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-02 11:45:02 +02:00
Panu Horsmalahti
7798dce61d
Enable installed extensions by default (#1572)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-02 11:37:23 +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
Lauri Nevala
7b77f18376
Fix extensions installation on Windows (#1596)
* Fix extensions installation on Windows

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

* Get rid of readFileSync

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

* Add missing semicolon

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-12-02 09:08:44 +02:00
Sebastian Malton
99c3a00721
fix symlinking extensions into .k8slens/extensions folder (#1579)
* fix symlinking extensions into .k8slens/extensions folder

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-12-01 09:53:44 -05: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
Jari Kolehmainen
2de1acde10
Tweak extensions page texts (#1550)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-01 11:20:59 +02:00
Jari Kolehmainen
0d501ca3b2
Fix extension status-bar item default styles (#1578)
* fix extension status-bar item default styles

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

* tweak padding

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-01 08:21:05 +02:00
Alex Andreev
30fa68ba1f
Fix: moving lens views behind extension views (#1565)
* Moving lens-views behind extension views

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

* Setting z-index for all child elements of <main/>

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-30 16:07:13 +02:00
Panu Horsmalahti
335778aeef
Enforce template strings in eslint (#1574)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-30 15:35:16 +02:00
Sebastian Malton
28abd66857
lint the repo as a github action (#1541)
* lint the repo as a github action

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-27 10:41:51 -05:00
Panu Horsmalahti
b3fd2232b5
Disable Install button while installing. Fix install notification. (#1551)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-27 16:05:28 +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
Roman
10eb082854
Fix: add-cluster page D&D is broken (#1549)
* fix: add-cluster page D&D kube-config don't work: Error-info: <DropFileInput/> must contain only single child element

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

* renaming

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-27 15:10:58 +02:00
Panu Horsmalahti
77c8617b79
Add confirmation dialog to extension uninstall (#1547)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-27 12:52:34 +02:00
Panu Horsmalahti
263d56b3c1
Disable Uninstall and Enable/Disable buttons while uninstalling. Add Notification for uninstall. (#1539)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-27 10:23:12 +02:00
Alex Andreev
2a96e094bb
Pod logs refactoring (#1516)
* Spreading PodLogs into 2 components

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

* Removing pod-logs.scss

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

* Removing unused isScrollHidden param

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

* Cleaning up logs components

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-26 14:11:54 +03:00
Panu Horsmalahti
ccd38b5cbe
Add extension uninstall (#1524)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-26 10:45:47 +02:00
Panu Horsmalahti
4e02e086a9
Remove extension when folder is removed during runtime (#1518)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-26 09:40:37 +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
Roman
7243dfdce4
Installing extensions UI improvements (#1522)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-25 16:42:19 +02:00
Jari Kolehmainen
6a92372f50
Change add-cluster to single column layout (#1515)
* change add-cluster to single column layout

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

* cleanup styles

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

* Fine-tuning layout/coloring styles

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

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-25 14:54:28 +02:00
vshakirova
5b484ca692
Add stateful set scale slider (#1406)
Signed-off-by: vshakirova <vshakirova@mirantis.com>
2020-11-25 15:21:54 +03:00
Roman
4474d87ed2
Fix: Unhandled exception for <DropFileInput disabled={true}/> (#1512)
* fix: invalid handling disabled={false} causing app crash

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

* re-fix: put React.Children.only() validation inside try-catch to avoid crash as well

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-25 11:55:30 +02:00
Jari Kolehmainen
8753b2b17c
Tweak install extension ux (#1510)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Roman <ixrock@gmail.com>
2020-11-25 11:53:40 +02:00
Roman
77ae31550a
Allow to install packed extensions from URL or local file (#1456)
* Option to install an extension from filesystem/url #1227 -- part 1 (UI)

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

* DropFileInput: common component to handle droped files (replaced also in add-cluster-page)

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

* fix: install via url-string on input.submit

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

* ui tweaks & minor fixes

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

* more ui/ux tweaks & fixes

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

* layout fixes

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

* component renaming: `copy-to-click` => `copy-to-clipboard` => `clipboard`

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

* reworks -- part 1

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

* fix downloading file, added common/utils/downloadFile

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

* confirm before install, unpack tar first steps

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

* installation flow, extracting .tgz

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

* clean up, fix lint issues

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

* update .azure-pipelines.yml

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

* fixes & refactoring

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

* fix lint harder :/

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

* fix validation

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

* fix validation harder

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

* responding to comments, fixed package validation

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

* common/utils/tar.ts: reject with Error-type

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

* fix: unit-tests

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-25 09:55:28 +02:00
Alex Andreev
2da598b66e
Set scrollbar colors as global styles (#1484)
* Setting global webkit-scrollbar styles

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

* Removing usage of custom-scrollbar mixin

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

* Set overflow:auto on .Table

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

* Fixing .drawer-content paddings

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

* Cleaning up

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-25 10:25:37 +03:00
Lauri Nevala
cb14d77a56
Track more events from adding a cluster (#1481)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-24 14:01:51 +02:00
Panu Horsmalahti
ff93760dc4
Enable object-shorthand rule (#1500)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 13:16:35 +02:00
Panu Horsmalahti
c79cee0311
Watch for added/removed local extensions (#1482)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 10:48:40 +02:00
Alex Andreev
8c73861962
Open last active cluster after switching workspaces (#1444)
* Save and restore lastActiveClusterId

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

* Activate clusters from workspaces page

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

* Fix saving last cluster while jumping from tray

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

* Adding workspace switch tests

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

* Remove console.log()

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

* Cleaning up

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

* Clean duplicated ClusterId definition

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

* Moving lastActiveClusterId field into WorkspaceModel

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

* fix extensionLoader error on dev environments where renderer might start early (#1447)

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

* Add Search by Ip to Pod View (#1445)

Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>

* Make BaseStore abstract (#1431)

* make BaseStore abstract so that implementers are forced to decide how to store data

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

* Enforce semicolons in eslint

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

* Add a few missing folders to be linted.

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

* Use @typescript-eslint/semi.

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

* Allow extension cluster menus to have a parent (#1452)

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

* fix SwitchCase indent rule in eslint (#1454)

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

* Revert "fix SwitchCase indent rule in eslint (#1454)"

This reverts commit 082774fe6e.

* Revert "Allow extension cluster menus to have a parent (#1452)"

This reverts commit 622c45cd6d.

* Revert "Use @typescript-eslint/semi."

This reverts commit 890fa5dd9e.

* Revert "Add a few missing folders to be linted."

This reverts commit c7b24c2922.

* Revert "Enforce semicolons in eslint"

This reverts commit ca67caea60.

* Revert "Make BaseStore abstract (#1431)"

This reverts commit 4b56ab7c61.

* Revert "Add Search by Ip to Pod View (#1445)"

This reverts commit 4079214dc1.

* Revert "fix extensionLoader error on dev environments where renderer might start early (#1447)"

This reverts commit 8a3613ac6f.

* Split workspace tests to smaller ones

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

* Missing semicolons

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

* Split workspace tests a bit more

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

* Adding extra click in Add Cluster button

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

* Adding more awaits to check running cluster

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

* Wait for minikube before running tests

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

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: pashevskii <53330707+pashevskii@users.noreply.github.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-20 14:53:28 +03:00
Panu Horsmalahti
22ff706f4c
Support networking.k8s.io/v1 for Ingress (#1439)
* Support networking.k8s.io/v1 for Ingress

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

* Add helper method to Ingress

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

* Fix lint errors.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-20 11:59:11 +02:00
Alex Andreev
57a879c2e8
Making text selection bg color transparent a bit (#1463)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-20 12:55:16 +03:00
Jari Kolehmainen
6e73c8ffc2
Fix extension cluster menu highlight/routing issues (#1459)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-20 09:29:38 +02:00
Sebastian Malton
43976f5bd9
fix SwitchCase indent rule in eslint (#1454)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-19 15:15:49 -05:00
Jari Kolehmainen
d7cba7d4d6
Allow extension cluster menus to have a parent (#1452)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 21:39:53 +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
pashevskii
b64694acda
Add Search by Ip to Pod View (#1445)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-19 09:24:06 -05: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
Alex Andreev
960bbe6813
Showing colors in logs (#1419)
* Converting ansi values to colored html

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

* Rewriting AnsiUp colors for search overlay

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-18 08:31:36 +03:00
Alex Andreev
6fd0bebdd6
Fixing workspaces adding/editing (#1405)
* Fix creating new workspace

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

* Show not yet enabled workspaces in list

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

* Not showing disabled workspaces

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-17 16:35:59 +03:00
Roman
13dbdac2f2
PageRegistration / PageMenuRegistration fixes & more simplification (#1386)
* PageRegistration & PageMenuRegistration fixes & more simplification, fix #1383

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

* clean up test, deprecate page.routePath

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

* fix: proper `isActive` state matching for page-menu-target to page considering current document location

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-16 15:18:53 +02:00
Alex Andreev
f98d11a0be
MInor workspace fixes (#1382)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-15 17:04:21 +03:00
Jari Kolehmainen
df0f080380
Simplify pages/menus/registry extension api internal implementation (#1364)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Roman <ixrock@gmail.com>
2020-11-13 17:04:39 +02:00
Alex Andreev
73d50f4695
Fix Landing Page width (#1359)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-13 15:36:45 +03:00
Roman
faa1cef307
PageRegistration & BaseRegistry refactoring (#1334)
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 16:29:02 +02:00
Alex Andreev
6432b3bb9e
Removing parental element styles that affect extensions (#1331)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-12 12:58:59 +02:00
Jari Kolehmainen
deb4773b44
Allow to specify KubeObjectDetailRegistration priority (#1335)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 09:16:22 +02:00
Lauri Nevala
85c4a10114
Implement KubeObjectStatusText extension API (#1188)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-11 08:57:15 +02:00
Sebastian Malton
a78bbb5f6c
Fix rendering of boolean values in CRDs (#1087)
* Fix rendering of boolean values in CRDs

- add optional special casing for boolean values in DrawerItems and
  TableRows since React (imo annoying fashion) does not render boolean
  values by default.
- add a spinner on the sidebar for when the CRD menu is expeanded but
  the entries have not been loaded yet.
- Add ability to double click a Badge to expand, also make it so that
  Badges highligh all text on first click.

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-10 10:10:19 -05:00
Alex Andreev
dd90dcb7f0
Removing !important statements from theme variables (#1303)
* Removing !important statements from theme vars

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

* Wait for user store to load

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

* Fix this reference

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

* Aligning test with resetTheme() fixes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-10 15:16:16 +03:00
Alex Andreev
b2f3cdd0d2
Keeping Icon focus state only for keyboard (#1234)
* Passing toolbar prop into action menus

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

* Toggling .mouse-intent

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

* Icon focus restyling

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

* Adding what-input dependency

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-10 12:36:06 +03:00
Jim Ehrismann
033a91f002
implemented app menu testing support (#1105)
* implemented app menu testing support

* addded Preferences page helm repo test

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-09 15:10:30 -05:00
Alex Andreev
8d1c29ae4c
Docs: extension styling and theming (#1267)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-09 19:05:27 +02: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
Alex Andreev
16fb35e3f9
Log search (#1114)
* Moving logs to virtual list

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

* Introducing log search

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

* Setting ref for VirtualList to access its methods

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

* Introducing search store

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

* Centering overlay when scroll to it

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

* Using SearchInput in PodLogSearch

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

* Using Prev/Next icons for search

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

* No trigger logs load when scrolled by method

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

* SearchInput refactoring

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

* Adding find counters

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

* Clean search query on dock tab change

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

* Refresh search when logs get changed

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

* Case-insensitive search

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

* Improve logs scrolling experience

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

* Catching empty logs in various places

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

* Fixing downloading logs

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

* Clean up some duplicated styles

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

* Removing jump-to-bottom animation

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

* Fixing since label

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

* Reducing container selector size

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

* Scroll down to bottom after each reload

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

* Fix search within timestamps if they not provided

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

* Use log row hover color from theme

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

* Add search bindings for 'Esc' & 'Enter' hits

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

* Focus input fields on CmdOrCtrl+F

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

* Move search.store.ts in to /common folder

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

* search.store.ts -> search-store.ts

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

* Adding test for search store

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

* Adding integration tests for logs

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

* Fixing scroll jumping bug

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

* Removing download icon check for testing purpose

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

* Removing clicking on nginx-create-pod-test

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

* Moving log tests before cluster operations

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

* Build extensions before integration tests

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

* Build also npm before integration tests

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

* Move npm build and extension build into own build step

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

* Removing separator sketches

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

* Horizontal scrolling to founded keyword

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

* Delaying horizontal scrolling

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

Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-09 17:46:14 +03:00
Roman
f69f8c793f
Export more UI components via extensions-api (#1285)
* export more UI components via extensions-api, touches #1277 #1284

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

* fix build, added table + notification-store exports

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-09 15:16:32 +02:00
Roman
474aaae8c6
ApiManager.registerStore should be simplified #1275 (#1278)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-09 13:30:41 +02:00
Roman
94ac081588
Extensions api fixes (#1233)
* fix: create extension instance only when enabled

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

* mark extension.isEnabled with private modifier

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

* try-catch errors for extension.disable()

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

* fixes & refactoring

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

* make ext.isBundled non optional

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-07 18:56:26 +02:00
Alex Andreev
2197e5e53d
Renaming theme .json files (#1256)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-06 15:30:55 +03:00
pashevskii
d074e0499f
Restart deployment (#1175)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-05 10:23:14 +03:00
Roman
f9578ba407
UI for enabling/disabling extensions (#1208)
* Extensions page and menu item

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

* Basic extension list view

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

* Adding get userExtensions filter

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

* Using WizardLayout at extension page

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

* Adding search to extension page

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

* Few style fixes

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

* clean up

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

* added folder-icon to open extensions in finder, refactoring

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

* remove export warnings in dev:main, tooltip.getPosition() fix

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

* refactoring base lens-extension.ts, added `isBundled` flag

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

* added enabled/disable buttons

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

* auto enable/disable extensions -- part 1

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

* auto enable/disable extensions -- part 2

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

* auto enable/disable extensions -- part 3

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

* auto enable/disable extensions -- part 4

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

* refactoring & fixes

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

* fix: use page-layout with fullsize viewport

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

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-04 19:25:36 +02:00
pashevskii
0497947159
[BugFix] Chart details are not updated on selecting another chart (#1155)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-03 18:41:30 +03:00
Alex Andreev
e3354f3b75
Fixing return statements in Pod menus (#1211)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-03 16:22:54 +03:00
chh
484de2ec21
Add +/- buttons in scale deployment popup screen (#1191)
* Add @testing-library/jest-dom and @testing-library/react for writing test cases

* Make eslint check __mocks__/*.ts files

* Mock electron.ipcRenderer.on to prevent errors in React compoment test cases

* Mock <Trans /> from @lingui/macro as a component simplely returns children components

* Use optional chaining operator (?.) to avoid TypeError: Cannot read property 'replicas' of undefined

* Add jest-fetch-mock for mocking global.fetch, activate for all test cases in jest.setup.ts

* Add basic tests for <DeploymentScaleDialog /> to ensure it initialises/renders without errors

* Add +/- button for changing desired replicas, and its test cases

* Adjust the styles of +/- buttons container to make sure it aligns with the slider

* Refactor after rebase from master

* Use var defined in vars.scss

* Add flex align-center to slider-container and remove margin-top: -4px

* Use <Icon /> to replace <i/>

* Add flex gaps to plus-minus-container

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-03 20:30:36 +08: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
Alex Andreev
c5298548cb Replace xs to smallest className
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 15:13:52 +03:00
Alex Andreev
924cf14fd5 Removing animation visibility delay
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 13:05:50 +03:00
Alex Andreev
7817db39f2 Status bar improvements
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 13:05:22 +03: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
Roman
334815f71a
Tray icon (#1005)
* Tray icon #833 -- part 1

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

* Tray icon #833 -- part 2

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

* Tray icon #833 -- part 3

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

* Tray icon #833 -- part 4

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

* fix: lint / linux build failed

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

* allow to disable tray from preferences

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

* allow to tweak svg-icon before applying as tray-icon

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

* add checkbox indication, setActive workspace on cluster select

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

* fix build version (cannon find module 'react')

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

* - switching dark/light icon depending on os-x theme settings
- optimization: don't re-create tray icon on menu udpates (avoid blinking)

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

* fix: refresh icon after turning on/off + switching dark-mode

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

* allow to close main window and re-open from dock or tray icon

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

* small fix

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

* fix: ensure main-window from global menu

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

* chore

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

* fix: hide traffic-light buttons for tray window

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

* removed redundant tray window

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

* removed delay from base-store

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

* adding cluster fix (reverted changes from master)

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

* - hide icon in dock when main-window closed (mac-os only)
- added preferences checkbox to open app at system start-up

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

* handle quit app action from tray menu

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

* moved generating tray icons to build step

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

* Fix integration tests (#1080)

* Fix integration tests

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

* Update integration/helpers/utils.ts

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

Co-authored-by: Sebastian Malton <sebastian@malton.name>

* fix-build: invisible app icon when there are more files within "build/icons/*.png"

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

* chore

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

* yarn i18n.extract

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

* clean-up

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

* navigation refactoring, move out `buildUrl` to common/utils so `react` and `react-router` not required as package.json dependecies in runtime (main)

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

* Ignore namespace query param on integration tests (#1109)

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

* merge-conflicts fixes

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

* support page fixes

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

* make eslint happy again

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

Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2020-10-27 15:25:29 +02:00
Jari Kolehmainen
4e8bdace79 Merge branch 'master' into extensions-api
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-27 09:24:27 +02:00
Alex Andreev
e9ebd06664
Allowing any item for StatusBarRegistration (#1143)
* Adding extension's label text next to Icon

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

* Removing unused registerStatusBarItem()

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-26 17:29:54 +03:00
Roman
9b9bf47970
Refactor PageRegistration to separate registries/interfaces #1130 (#1144)
Signed-off-by: Roman <ixrock@gmail.com>
2020-10-26 15:40:34 +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
Roman
f3a0059355
Extension support page (#1112)
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Jim Ehrismann <40840436+jim-docker@users.noreply.github.com>
2020-10-24 09:24:54 +03: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
Jari Kolehmainen
99db7aca19
Allow extensions to register kube-object menus + details (#1108)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-22 21:41:20 +03:00
Jari Kolehmainen
c566c85351
Move tracker to telemetry extension (#1092)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-19 11:56:08 +03:00
steve richards
c0b8d472a0
Add LoadBalancer information to the Ingress view (#1064)
Signed-off-by: Steve Richards <srichards@mirantis.com>
2020-10-16 17:13:18 +03:00
steve richards
bf20a15819
Added Last Status information for Container (#1041)
Signed-off-by: Steve Richards <srichards@mirantis.com>
2020-10-16 17:12:13 +03:00
Alex Andreev
073b8a43f2
Preloading previous logs on scroll (#1079)
* Preload logs when scrolled to top

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

* Adding JumpToBottom button

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

* Moving jump-to-bottom button to right

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

* Adding old/new logs separator

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

* Increase font-size in jump to bottom button

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

* Moving newLogsSince determination out of component

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

* Move newLogSince from storage data to observable

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

* Remove notiifications on log loading errors

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

* Transform logs into array in store

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

* Clean up

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

* Remove excessive join('\n\)s

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

* Adding pod and namespace data to log controls panel (#1083)

* Move log controls into separate file

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

* Changing prev container logs icon

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

* Removing 'Logs' from the tab title

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

* Remove unused string template quotes

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

* Hide JumpToBottom btn on error

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

* Remove mention about dialog

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-16 12:46:16 +03:00
steve richards
6e4fa31a49
Sort Pod environment values in alphabetical order (#1075)
* Sort Pod environment values in alphabetical order

Fixes: #739

Signed-off-by: Steve Richards <srichards@mirantis.com>

* Consolidated to a single lodash import. Corrected Lint failure

- Removed the additional import of flatten and updated as needed;
- Changed the variabled `orderedEnv` to be a const;

Signed-off-by: Steve Richards <srichards@mirantis.com>

Co-authored-by: Steve Richards <srichards@mirantis.com>
2020-10-16 10:46:30 +03:00
Jari Kolehmainen
a00d26149c Merge branch 'master' into extensions-api
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-16 07:58:47 +03:00
Sebastian Malton
770c6b80f1
move autobind and debouncePromise to common/utils (#1081)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-10-14 14:36:19 +03:00
Jari Kolehmainen
78f6f8ef54
Fix bundled kubectl path on dev env (#981)
* fix bundled kubectl path on dev env

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

* fix specs

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-14 14:35:33 +03:00
steve richards
db9af88d91
Updated regex for isUrl to allow for an empty string (#1049)
Updated regex for isUrl to allow for an empty string aswell as a correct URL.

Signed-off-by: Steve Richards <srichards@mirantis.com>

Co-authored-by: Steve Richards <srichards@mirantis.com>
2020-10-14 14:34:04 +03:00
Lauri Nevala
3a6b499fe3 Merge branch 'extensions-api' of github.com:lensapp/lens into extensions-api 2020-10-14 09:15:46 +03:00
Jari Kolehmainen
45abc740e9
Initial telemetry extension (#1067)
* initial telemetry extension

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

* Fix preferences saving and default value

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

Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-13 12:57:38 +03:00
Alex Andreev
83b8fa9d98
Ability to show previous terminated container logs (#1074)
* Show previous terminated container logs

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

* Fix for parsing error object

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-12 15:58:18 +03:00
steve richards
4fcac6b0d0
Added additional checks on the command used in the Exec plugin in a kubeconfig (#1013)
- Added check to see if the program being referenced in the command field of the
exec object in the User construct exists. If it doesn't an error will be raised.
If more than 1 context is selected when adding a kubeconfig then valid contexts
will be added and any with an error will not be.

Signed-off-by: Steve Richards <srichards@mirantis.com>

Co-authored-by: Steve Richards <srichards@mirantis.com>
2020-10-12 10:20:08 +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
Alex Andreev
dc07d646ec
Align NamespaceSelect and SearchField (#1073)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-12 10:08:57 +03:00
Alex Andreev
f4f0cba6ca
Moving Pod logs into Dock panel (#1043)
* Moving pod logs into Dock

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

* Always set up default container

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

* Open existent tab if fount

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

* Moving logs load and properties into store

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

* Setting a refresher

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

* Adding showButtons prop to InfoPanel

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

* Hiding sequence number in log tabs

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

* Removing PodLogsDialog

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

* Removing unused PodLogsDialog import

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

* Tiny cleaning

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

* A bit of cleaning up

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

* Hiding drawer when opening logs

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-11 19:36:19 +03:00
Jari Kolehmainen
aa864fc199
Support extensions in main process (#1032)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-08 11:52:45 +03: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
Sebastian Malton
21bdc6ba8f
add resizing capabilities to the side bar (#1009)
* add resizing capabilities to the side bar

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-10-06 13:33:23 -04:00
Lauri Nevala
0f57ea91b1 Merge branch 'master' into extensions-api 2020-10-06 14:52:27 +03:00
Roman
c78b071da3
TabLayout should not be part of LensRuntimeRendererEnv (#1029)
Signed-off-by: Roman <ixrock@gmail.com>
2020-10-06 14:38:28 +03:00
Jari Kolehmainen
2b6f283e1b
Allow extensions to have external dependencies (#1018)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-05 16:39:58 +03:00
Sebastian Malton
87061cee9e
Refactor testing harness to use defaults (#808)
* Refactor testing harness to use defaults

- Move tests into defaultly named test folders
- Use default test suffix of ".test" instead of "_test"
- Make cluster-store tests unit tests by adding more
    nesting, so that order of tests doesn't matter

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

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-10-02 10:05:59 -04:00
Alex Andreev
68317453c1
Adding space after drawer badges (#1014)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-02 12:49:03 +03:00
Alex Andreev
af71834676
Moving dock info panel to the top (#1007)
* Moving EditorPanel to the top

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

* Preventing save with empty yaml

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

* Make tooltips in @withTooltip narrower

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

* Not showing api errors in icon

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

* Success notification for create resource operation

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

* Button outlined style

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

* Making second button to stay outlined

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

* Fine-tuning dock info panel colors

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

* Removing border-radius from ace-editor

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-02 09:32:20 +03:00
Sebastian Malton
9ecfeb316c
cleanup Draggable into ResizingAnchor (#989)
* Rename `Draggable` as `ResizingAnchor` since that is what it is used for and shouldn't be mistaken as a general draggable item

* Refactor `ResizingAnchor` to be much more smart about how it handles mouse movements. Allow it to know which direction the resizing should be in allowing it to produce exact resized values.

* Add event handlers for the min and max extents so that actions can be triggered when those extents are passed (in either direction)

* Add double click support

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-10-01 11:37:27 -04: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
de3849d22c Merge branch 'master' into extensions-api 2020-09-30 19:47:13 +03:00
Alex Andreev
3d0b843891
Preventing drawer close on secret's click (#1003)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-09-30 16:54:21 +03:00
Sebastian Malton
c542ad0348
refactor overview statuses to be more DRY (#912)
* refactor overview statuses to be more DRY

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-29 11:25:29 -04:00
Alex Andreev
459742556b
Fix CRD conditions rendering (#994)
* Using reason field if no type provided

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

* Lowecasing condition badge class

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-09-29 10:58:16 +03:00
Sebastian Malton
34e141e517
make namespace filter multi select and change onChange (#987)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-28 10:30:23 -04:00