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

473 Commits

Author SHA1 Message Date
Jim Ehrismann
73724b5a54
[BREAKING]: refine and document cluster feature api (#1507)
* refine and document cluster feature api

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

* lint fix

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-25 16:40:25 +02:00
Lauri Nevala
236852774a
Fix pod usage metrics on Kubernetes >=1.19 (#1514)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-25 15:34:33 +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
Sebastian Malton
c93ee4ea6d
[BREAKING]: remove deprecated routePath before GA (#1505)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-25 12:03:57 +02: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
29ea0c8404
Resolve extension enabled status when loading it (#1485)
* Resolve extension enabled status when loading it

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

* Check if extension is enabled in store unless it is bundled

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

* Return false by default for isEnabled

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

* Refactor isEnabled assignment

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-25 09:09:26 +02:00
Sebastian Malton
ca49fb98d9
remove @observable.shallow from Lens(M|R)Extension (#1504)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-24 12:41:57 -05:00
Sebastian Malton
4e6b8ee10e
Add designated folder for extensions (#1245)
* add store for mapping extension names to filesystem paths

- add extension mechinism for getting a folder to save files to

- add test to make sure that extensions are being loaded

- skip extension loading test

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-24 10:28:08 -05:00
Jari Kolehmainen
1be86b34f4
Add LensRendererExtension.isEnabledForCluster (#1502)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-24 16:15:14 +02: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
2a8cfe5e67
Add React Developers Tools (#1410)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 12:45:12 +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
Sebastian Malton
5005d34c2e
change BaseRegistry to only have one type parameter (#1474)
* change BaseRegistry to only have one type parameter

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-23 12:54:39 -05:00
Lauri Nevala
0a5e7a048d
Report enabled extensions (#1451)
* Report enabled extensions

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

* Add missing semicolons

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

* Refactoring

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

* Add missing semicolon

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 13:47:14 +02:00
Lauri Nevala
19150fca84
Catch errors return error response when fetching chart or chart values fails (#1478)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 13:45:07 +02:00
Jari Kolehmainen
2f17a7ec67
Replace support-page extension with a link to the documentation support page (#1469)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-23 13:01:40 +02:00
Lauri Nevala
6a0dd4edfb
Replace deprecated stable helm repository with bitnami (#1479)
* Replace deprecated stable repo with bitnami

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 09:07:37 +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
Sebastian Malton
0f3f5611ba
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>
2020-11-19 09:24:41 -05: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
d60eee20cc
fix extensionLoader error on dev environments where renderer might start early (#1447)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 16:11:58 +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
Jari Kolehmainen
c4b98534dc
kube-auth-proxy: accept only target cluster hostname (#1433)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 08:32:07 +02:00
Lauri Nevala
3197e3a1fe
Catch errors when responding from proxy error (#1416)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 12:33:53 +02:00
Lauri Nevala
126e1ff7a8
Reorder File menu (#1420)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 11:03:38 +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
Lauri Nevala
d19eb57037
Track service start and stop events (#1414)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 08:55:57 +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
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
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
Jari Kolehmainen
596e60a6f3
Generate extension-api .d.ts and .js files using tsc (#1387)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-16 15:09:16 +02:00
Alex Andreev
d612626801
Adding Extensions item for non-mac menu (#1392)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-16 13:50:32 +03:00
Alex Andreev
d559d5e62a
Exporting active theme to extensions (#1371)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-16 12:10:35 +02:00
techknowlogick
fce05c6cb2
Use latest alpine version (3.12) for shell sessions (#1384)
Signed-off-by: Matti R <matti@mdranta.net>
2020-11-16 12:09:21 +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
55b6edfc2a
Fix PageRegistry.getByPageMenuTarget issue when package name has special chars (#1380)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-14 10:16:40 +02:00
Sebastian Malton
4d3204766b
add retry cap to handleStaticFile to prevent an infitite loop (#1373)
* add retry cap to handleStaticFile to prevent an infitite loop

* 'yarn -> yarn run' for node_module dependencies

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-13 15:45:57 -05:00
Jari Kolehmainen
0fb859a22a
Default PageRegistration.routePath to path based on id (#1374)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-13 19:37:03 +02: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
4222359bd6
Add LensRendererExtension.navigate (#1345)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 10:30:57 +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
Roman
1f88c05e82
Refactoring: removed kube versioned api (#1328)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-12 08:39:50 +02:00
Jari Kolehmainen
00be4aa184
Remove windowManager from extension api (#1323)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 21:55:49 +02:00
Jari Kolehmainen
6a908cb528
Expose kube object store types to extensions (#1326)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 16:12:31 +02:00
Roman
c67dad54e3
fix: allow to select kube-api objects with label & field selectors (#1327)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-11 13:42:36 +02:00
Lauri Nevala
bcbbe140b9
Expose registration and related component interfaces to extensions (#1322)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-11 11:56:13 +02:00
Jari Kolehmainen
d0102a2d9a
Expose all custom k8s api classes via extension api (#1319)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 11:48:13 +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
Lauri Nevala
05188ef3cc
Do not expose registries to extensions (#1304)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-10 12:46:40 +02: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
Lauri Nevala
0f8e8c2237
Expose CRD api to extensions (#1297)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-10 09:02:32 +02: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
chh
85f0ef8c2e
Add webpack hot-reload/cache plugins to improve Lens DX (#1250)
* Add webpack-dev-server (for hot module replacement) to serve statics, add HardSourceWebpackPlugin to improve re-compiling speed

* Serve statics using webpack-dev-server instead of lens-proxy, redirect request of Lens.html/Lens.js to webpack-dev-server

* Add react-refresh-webpack-plugin and its dep for hot-reload

* Add hot-reload plugin, and make proxy redirects requests to webpackdevserver

* Add hard-source webpack plugin to main process

* Remove parameter 'path' of handleStaticFile

* Upgarde webpack to v4 latest stable

* Fix build error: plugins shouldnt be null

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-09 21:04:41 +08: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
Mario Sarcher
3bc45218c1
Documentation (MKDOCS) (#1230)
Co-authored-by: Steve Richards <srichards@mirantis.com>
Co-authored-by: Mario Sarcher <msarcher@mirantis.com>
Co-authored-by: steve richards <steve.james.richards@gmail.com>
Co-authored-by: Paul Williams <pawilliams@mirantis.com>
Co-authored-by: pauljwil <pauljwil@gmail.com>
2020-11-05 16:38:56 +02: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
Sebastian Malton
02b9ac6b8b
Add @types/node to devDeps for npm extension (#1217)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-04 15:44:24 +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
3ed7d93e91
Load symlinked extension folders (#1207)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-03 08:35:40 +02:00
Jari Kolehmainen
7a6f6441af
Expose more apis for KubeObjectListLayout usage (#1194)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 19:28:00 +02: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
Roman
32ca885596
License extension (#1174)
* License menu item should come from an extension #1141

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

* fix: expose `Util.openExternal` via extensions-api

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

* move LICENSE back to root

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-02 13:03:00 +02:00
Jari Kolehmainen
da862db0b9
Fix proxy upgrade socket timeouts (#1190)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 08:17:08 +02:00
Jari Kolehmainen
70a8982c9f
Add missing kubeObjectDetailItems observable to LensRendererExtension (#1187)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 21:49:16 +02:00
Jari Kolehmainen
d23da79538
Expose KubeObjectListLayout to extensions (#1186)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 16:25:57 +02:00
Lauri Nevala
f126264d47
Telemetry improvements (#1180)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-30 16:09:59 +02:00
Jari Kolehmainen
eb5aca628d
Expose kubeObjectDetailRegistry via extension-api (#1185)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 15:57:32 +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
Jari Kolehmainen
e4c56512e7
Fix regression caused by #1171 (#1172)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-29 12:06:37 +02:00
Alex Andreev
a583dbe6d3
Fix: path checks in custom extension loader (#1170)
* Check for path existence and directory type

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

* Check for package.json availability

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-29 11:23:54 +03:00
Jari Kolehmainen
66d5fdd8b5
Optimize ExtensionManager#load (#1171)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-29 09:53:25 +02:00
Jari Kolehmainen
40e228c1ac
Fix npm package missing types (#1167)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-28 12:48:37 +02:00
Jari Kolehmainen
c3bde1ad00
Fix bundled extension install on Linux/AppImage (#1163)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-28 10:16:52 +02:00
Roman
bfdbf02830
fix: correct command in Makefile for compiling extension-types, typo fix (#1160)
Signed-off-by: Roman <ixrock@gmail.com>
2020-10-27 22:41:35 +02:00
Roman
67754ffbb9
Get rid of this.disposers while registering stuff in extensions (#1148)
Signed-off-by: Roman <ixrock@gmail.com>
2020-10-27 17:07:21 +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
Lauri Nevala
e2a1bac0ed
Load extensions also from local folder (#1147)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-27 14:37:41 +02:00
Jari Kolehmainen
67b8410a2c
npm package publish preparations (#1150)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-27 13:02:31 +02:00
Lauri Nevala
18ac92ebdc
Add more telemetry data (#1113)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-27 10:55:31 +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
JeongHoon Byun (a.k.a Outsider)
2a3b391870
force revision type to number for sort (#1097)
Signed-off-by: Outsider <outsideris@gmail.com>
2020-10-27 09:44:09 +03: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
Roman
48d8d985ae
FIX: Duplicate "support" items in menu (#1140)
* Duplicate "support" items in menu, fix #1128

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

* clean up (contents moved to extensions/core-api/index.ts)

Signed-off-by: Roman <ixrock@gmail.com>
2020-10-26 13:07:26 +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
2a9d39a8b9
Test is user cluster admin on cluster activate (#1116)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-23 10:05:44 +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
91bef77997
Extension store base class + rename main/renderer-extensions -> extensions (#1107)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-21 13:55:50 +03:00
Jari Kolehmainen
8f8dd9eb45
Extension npm packaging preparations (#1103)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-20 20:25:51 +03:00
Jari Kolehmainen
d25e2f015b
Restructure extension apis (#1101)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-20 14:45:15 +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
Lauri Nevala
bdd0f0b604
Fetch Helm available repositories from Artifact HUB cache (#1090)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-16 17:10:37 +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
Lauri Nevala
81575b333a
Fix KubeAuthProxy unit tests (#1084)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-14 17:10:58 +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
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
Jari Kolehmainen
4f98a01a8b
Improve how extension-api is exposed/loaded (#1055)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-09 14:12:40 +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
14d3d88278
Fix: check for location bevore navigate (#1016)
* Check for location before navigate

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

* Handling every location type

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-02 14:33:29 +03: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
Jakub Štiller
f596b3c45c
Fix CPU/Memory usage metrics when using prometheus operator. (#632)
Cluster CPU and Memory usage cannot be sum by node as it is rendered as single cluster metrics. Without this changes, the cluster graphs (standard and pie) shows data only from first (or latest) nodes.

For pod specific metrics, when we use prometheus operator the `container_` metics are doubled. Restric search to get those have image tag.

Signed-off-by: Jakub Štiller <stiller@2n.cz>

Co-authored-by: Jakub Štiller <stiller@2n.cz>
2020-09-30 14:56:22 +03:00
Jari Kolehmainen
8823c6f5f2
Terminal: set NO_PROXY env for localhost communication (#982)
* terminal: set NO_PROXY env for localhost communication

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-30 14:08:42 +03:00
Lauri Nevala
c049918d25
Add support for Docker Enterprise Container Cloud metrics (#998)
* Add support for Docker Enterprise Container Cloud metrics

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-30 14:02:18 +03:00
Jari Kolehmainen
a92a6ed0b0
Expose react to extensions (#1000)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-30 11:34:14 +03:00
Jari Kolehmainen
bec288d22e
fix extension-api module alias on production (#1001)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-30 11:33:49 +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
Jari Kolehmainen
82c4177cb9
Move in-tree extensions to top-level folder (#993)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-29 16:45:42 +03: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
Roman
5ec6751ab4
Extensions api types (#985)
Signed-off-by: Roman <ixrock@gmail.com>
2020-09-29 07:37:25 +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
Yangjun Wang
bc228c9e36
display last-applied-configuration annotation in detail-view, but filter it in search fields still (#943)
Signed-off-by: Yangjun Wang <yangjun.wang@wartsila.com>

Co-authored-by: Yangjun Wang <yangjun.wang@wartsila.com>
2020-09-28 17:24:54 +03:00
Alex Andreev
163b34463b
Removing pre-defined input type (#984)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-09-28 14:59:35 +03:00
Lauri Nevala
13b99afa21
Add migration to fix kubeconfig paths that point to snap config dir (#972)
* Add migration to fix kubeconfig paths that point to snap config dir

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-25 15:13:20 +03:00
Lauri Nevala
950fd6528f
Fix kubeconfig fetching for service account (#966)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-25 15:04:48 +03:00
Lauri Nevala
265aa41968
Fix reading CRD conditions (#967)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-25 12:59:12 +03:00
Lauri Nevala
d0f1d7b74b
Do not filter contexts when adding new clusters (#969)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-25 12:58:38 +03:00
Jari Kolehmainen
51b21347da
cleanup proxy upgrade handler (#963)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-24 18:14:57 +03:00
Sebastian Malton
5401c99298
Helm components should always use version information (#949)
* clean up code to catch rejections

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-24 09:54:26 -04:00
Jari Kolehmainen
d20f890ddb
Fix spdy proxy (#962)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-24 16:53:49 +03:00
Sebastian Malton
5b6b19036d
dropdowns should have 'cursor: pointer;' (#956)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-24 09:21:56 -04: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
386e7c63bb
Convert bytes in memory BarChart properly (#947)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-24 14:54:09 +03:00
Lauri Nevala
fe4a63a955
Allow to add the same cluster to multiple workspaces (#961)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-24 14:30:44 +03:00
Sebastian Malton
b88c0d4fbf
Make download dir option consistent with other settings (#875)
* make download dir option consitent with other settings

* make path to kubectl setting consistent

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

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-23 08:57:51 -04:00
Sebastian Malton
2f53e76060
reduce height on draggable-top and only render it on macos (#942)
* reduce height on draggable-top and only render it on macos

* move drag bar out of app and into bootstrap

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-23 08:57:34 -04:00
Roman
9a402eab3d fix: example-extension broken after merging master
fix: removed devtools warnings from extension-api bundle

Signed-off-by: Roman <ixrock@gmail.com>
2020-09-23 12:10:02 +03:00
Roman
91b4823ec6 Merge branch 'master' into extensions-api
# Conflicts:
#	src/renderer/components/app.tsx
#	src/renderer/components/cluster-manager/clusters-menu.scss
#	src/renderer/components/cluster-manager/clusters-menu.tsx
#	src/renderer/components/layout/main-layout.tsx
#	src/renderer/components/layout/sidebar.tsx
2020-09-23 11:49:16 +03:00
Sebastian Malton
7f6ae6e8c3
Auto select one and only cluster from pasted config (#888)
* Auto select one and only cluster from pasted config

- Disable add button with tooltip if no clusters are selected
- Add functionality to tooltip to display correctly over disabled
  elements

* feature should work of any method of adding kube config

Signed-off-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-09-21 16:11:43 -04:00
Yangjun Wang
cb3ab09b42
fix side bar scrolls after clicking on lower item (#928)
* fix bug: side bar scrolls after clicking on lower item

Signed-off-by: Yangjun Wang <yangjun.wang@wartsila.com>

* fix issue main area missing issue, add mobx observer to TabLayout

Signed-off-by: Yangjun Wang <yangjun.wang@wartsila.com>

Co-authored-by: Yangjun Wang <yangjun.wang@wartsila.com>
2020-09-21 22:18:41 +03:00
Sebastian Malton
9a10db837e
fix Notifications blocking items not visually under them from being interacted with (#915)
* fix Notifications blocking items not visually under them from being interacted with

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-21 14:47:44 -04:00
Lauri Nevala
78ab6f016b
Fix background of What's New page with white theme (#940)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-21 16:47:51 +03:00
Yangjun Wang
44190c7321
Get focus to dock tab content after resize (#935)
Signed-off-by: Yangjun Wang <yangjun.wang@wartsila.com>

Co-authored-by: Yangjun Wang <yangjun.wang@wartsila.com>
2020-09-21 16:37:20 +03:00
Yangjun Wang
25aac57a86
fix bug - deleted namespace does not get auto unselected (#930)
* fix bug - deleted namespace does not get auto unselected

Signed-off-by: Yangjun Wang <yangjun.wang@wartsila.com>
2020-09-21 15:08:44 +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
Lauri Nevala
3f8a2b09a0
Fix service account's imagePullSecrets rendering if secret is not found (#908)
* Fix service account's imagePullSecrets rendering if secret is not found

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-18 12:33:01 +03:00
Sebastian Malton
9a9f50ab34
add a zero width space to Badges to fix double click highlighting issue (#914)
* add a zero width space to Badges to fix double click highlighting issue

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-09-18 09:33:43 +03:00
Jim Ehrismann
e84082dc6d
Reduce the main BrowserWindow minimum size (#916)
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-09-18 08:55:05 +03:00
Lauri Nevala
0fedba5b66
Fix ingress points rendering if no data available (#906)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-17 16:06:11 +03:00
Lauri Nevala
e5a365d00e
Fix ws upgrade for terminal session (#900)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-09-16 23:43:03 +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
Sebastian Malton
1e96c5a2d4
fix placement of the add new cluster number (#876)
Signed-off-by: Sebastian Malton <smalton@mirantis.com>

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-09-15 09:07:16 -04:00
Alex Andreev
c6b3738a75
App reload in cluster settings (#858)
* Passing extra routes where to find clusterId

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

* Cluster settings refactorings

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

* Clean up

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-09-12 16:35:04 +03:00