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

30 Commits

Author SHA1 Message Date
Jari Kolehmainen
8846b5c96f
handle aborted responses in lens proxy (#4308)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-11-10 13:47:36 +02:00
Sebastian Malton
c37a8aee0a
Correctly catch and notify user about NodeShell pod failures (#4244)
* Correctly catch and notify user about NodeShell pod failures

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

* Fix error throwing sometimes during Terminal.detach

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-09 22:52:46 -05:00
Sebastian Malton
c09a57370e
Block shell websocket connections from non-lens renderers (#4285)
* Block shell websocket connections from non-lens renderers

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

* Add IPC based authentication tokens

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

* Fix race condition on tab start

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-08 19:02:10 -05:00
Sebastian Malton
c6dce043a7
Lint: comma-spacing (error) & comma-dangle (error) (#4200)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-02 17:38:20 -04:00
Jari Kolehmainen
bd7ba9ff43
remove cors headers from LensProxy (#4126)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-10-25 17:42:28 +03:00
Jari Kolehmainen
642c6f0d72
Detect log follow requests (#3890)
* detect log follow requests

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

* fix

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

* refactor to use getBoolean

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

* refactor to use getBoolean

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

* refactor to use getBoolean

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-09-27 19:45:37 +03:00
Jari Kolehmainen
443186d4f5
fix apiBase initialization on main (#3595)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-12 10:34:45 +03:00
Jari Kolehmainen
58a446bd45
Refactor k8s api to common (#3553)
* refactor kube api to common

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

* refactor more utils to common

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

* refactor more utils to common

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

* fix tests

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

* switch to use node-fetch on both sides

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

* cleanup

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

* improve logger

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

* fix lint errors

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

* fix/improve tests

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

* fix tests

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

* fix node-fetch require error on prod build

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

* preload fix

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

* fixes

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

* read serverAddress from apiBase

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

* cleanup

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-08-10 13:26:14 +03:00
Sebastian Malton
476aa74101
Inject handlers into LensProxy to remove circular-deps (#3546)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-08-04 19:18:01 -04:00
Jari Kolehmainen
8fff064e0c
Fix kubeconfig-sync issues (#2692)
- Removed `getFreePort` as its use is always a race condition. Change
  all uses of it to retrive the port after listening

- Added `getPortFrom` as a helper function to read a port from a stream

- Remove `Cluster.ownerRef` as it is outdated and no longer needed for 5.0

- Remove `Cluster.enabled`, no longer needed because of above

- Removed `Cluster.init`, moved its contents into `Cluster.constructor`
  as nothing in that function is asyncronous. Currently only being run
  on `main` as a stop gap until `renderer` gets its own version of
  `Cluster`

- Refactored `LensProxy` so as to prevent `pty.node` (a NodeJS
  extension) being included in `webpack.extension.ts`'s run

- Removed the passing around of the proxy port as that can now be
  accessed from an instance of `LensProxy`

- purge ContextHandler's cache on disconnect

Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-05-04 15:21:15 -04:00
Sebastian Malton
9563ead2e6
Fixing Singleton typing to correctly return child class (#1914)
- Add distinction between `getInstance` and `getInstanceOrCreate` since
  it is not always possible to create an instance (since you might not
  know the correct arguments)

- Remove all the `export const *Store = *Store.getInstance<*Store>();`
  calls as it defeats the purpose of `Singleton`. Plus with the typing
  changes the appropriate `*Store.getInstance()` is "short enough".

- Special case the two extension export facades to not need to use
  `getInstanceOrCreate`. Plus since they are just facades it is always
  possible to create them.

- Move some other types to be also `Singleton`'s: ExtensionLoader,
  ExtensionDiscovery, ThemeStore, LocalizationStore, ...

- Fixed dev-run always using the same port with electron inspect

- Update Store documentation with new recommendations about creating
  instances of singletons

- Fix all unit tests to create their dependent singletons

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-04-21 09:59:59 -04:00
Sebastian Malton
743597e2f5
Cleanup shell sessions (#2469)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-04-12 09:51:25 +03:00
Jari Kolehmainen
7a35253710
Proxy should listen only on loopback device (#2388)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-03-25 12:50:13 +02:00
Jari Kolehmainen
090a3c2bf5
Flush response headers always when proxy gets a response (#2229)
* flush response header always when proxy gets a response

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

* force flush only when watch param exists

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2021-02-26 07:34:54 +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
Lauri Nevala
ad6de71826
Add more log entries on start up (#1955)
* Add more log entries on start up

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

* And log entry about shell sync

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

* Refactoring

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

* Add new line

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

* Apply suggestions from code review

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

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
2021-02-04 19:19:11 +02:00
Jari Kolehmainen
c839e6fdfc
Fix proxy retry counter cleanup on success (#1825)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-12-21 22:10:32 +02:00
Panu Horsmalahti
dcf253e7d5
Add eslint rule padding-line-between-statements (#1593)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-12-02 09:55:52 +02:00
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
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
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
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
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
51b21347da
cleanup proxy upgrade handler (#963)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-09-24 18:14:57 +03: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
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
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
Roman
5670312c47
Migrating Vue components to React and stores refactoring (#585)
Signed-off-by: Roman <ixrock@gmail.com>

Co-authored-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Sebastian Malton <smalton@mirantis.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-08-20 08:53:07 +03:00