* Making apiBase injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert all of Helm functions to be DI
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make PortForward's use of apiBase fully injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert all metric requests to be injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Replace resource applier with injectables
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Switch KubeJsonApi.forCluster to be injectable but do not use
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert the rest of shell sessions to be DI-ed
- This is a prerequesit for using the new
createKubeJsonApiForClusterInjectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Use new createKubeJsonApiForClusterInjectable for openNodeShellSession
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make KubeconfigDialog injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove jest-fetch-mock and make fetch injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests with new global override
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add new injectable for create KubeJsonApi and JsonApi instances
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix showing-details-for-helm-release behavioural tests
- Remove HelmChartStore in favour of all injectables
- Create a model for UpgradeChartDockTab
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix show details and updating helm releases tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix residual typing issues related to metrics
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix crash on load due to circular dependency
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix create resource tab not working
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove legacy apiBase global
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce and use isDebuggingInjectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce and use windowLocationInjectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove global legacy apiKube
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Improve injectable filenames compared to the injectables inside
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove modifying input in requestActivePortForwardInjectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce and use get(Milli)SecondsFromUnixEpochInjectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Switch to non-reactive way of gettting possible helm release versions
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix typo
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix bug in KubeApi constructor
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert all KubeApi related tests to use asyncFn
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix unit tests after introducing new injectables that have side effects
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix bad rebase causing tests to fail
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Improve expects for multiple field values
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix crash will looking up api refs
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix breaking change on KubeApi.list
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Better fix for formatting urls
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove injectable for time since we should just use useMockTime
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add happy path behavioural tests for upgrade chart tab
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove debug message
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix showing-details-for-helm-release tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix installing-helm-chart-from-new-tab tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests relating to hosted cluster id
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots to recent changes in master
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Reupdated upgrade chart new tab test snapshots
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix flakiness in unit test when using <Animated>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix flakiness and improve tests for DeleteClusterDialog
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix kubeconfig-sync tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix <Extensions> tests by removing mockFs and making everything injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix build issues
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix getElectronAppPathInjectable override not returning absolute paths
- Also fixes the listing-active-helm-repos-in-prefs tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Replace all uses of getAbsolutePath with joinPaths as it is more correct and less confusing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix opening application window tests by making override properly absolute
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots relating no longer using getAbsolutePath
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix and add behavioural tests for RenderDelay
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix extension discovery tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix test flakiness because of path side effects, propagate uses to as many places
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix extension-discovery tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add global override to fix some tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Rewrite and fix implementation of KubeconfigManager and its tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests by global override pathExists
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix unit tests failing on windows by using injectable verions of path functions
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Attempt to fix test timeout by using runInAction
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots after rebase
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots after rebase
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests after rebase
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix setupIpcMainHandlers usage
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
Co-authored-by: Iku-turso <mikko.aspiala@gmail.com>
* Split integration tests into seperate jobs from unit tests for faster CI
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add logging
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Simplify the matrix
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove steps that are part of Makefile
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix yml decl
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Switch to using single quotes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Further clarify the test job names
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix invocation
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Attempt to fix traking stdout
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* And handling for tests failing to start
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add check for app early exiting
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add more logging to help with debugging
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Cleanup attemptStart code
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make injecting CAs injectable, remove mac-ca as dependency
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix win-ca failing on electron renderer on windows
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix the matcher under features/ for main
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert ReleaseChannel into an InitializableState
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix init timing for DefaultUpdateChannel
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make UserStore loading seperate from creation to fix initialization timing errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix overrides of UserStore
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix UserStore tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Move userStoreFileMigration call to the init runnable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add global override for userStoreFileMigratiom
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
- All the removed uses of `includePrerelease` that are removed were not
actually used within the semver package
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
- There are several reasons why these might fail that are irrelavent to
the other pipelines. So we should just let them continue
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Override @astronautlabs/jsonpath's underscore version
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove use of buggy 'yarn check'
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Upgrade to use electron 19.0.4
- Update documentation
- Updated disturl in .yarnrc to fix build issue
- Remove use of abort-controller package
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove support for webview tags
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make openBrowser->openLinkInBrowser injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove use of deprecated link matcher API from XtermJS
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
- Fix not displaying spinner while object is not defined
- Fix not displaying loading error if object is not defined
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix trying to connect to cluster whose entity doesn't exist
- If a Cluster is trying to be connected to but there is no associated
entity then don't try and connect
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Revert cleanup
Signed-off-by: Sebastian Malton <sebastian@malton.name>
- Remove uses to navigator.onLine as not needed and because that value
cannot be trusted (see several bug reports on chromium)
- Fix infinite loop when socket is not connected in flush
- Add some simple tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add guards to prevent activation errors slipping through
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make sure all logging has a message, output less errors when prometheus fails
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Improve logging from getPortFromStream
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix cluster frame display issue
- Add some defensive code to prevent this sort of infinite loop
- Add some unit tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix unit tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix build
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Factor out injectable for getting of cluster config data
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix not starting with sentryDSN configured
- Make sure that all beforeElectronIsReady runables are run completely
syncronously
- Fix when setupSentry is to be run (namely before electron is ready)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix changes to InputValidator to resolve accidental breaking changes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Show changes working by removing no longer required empty props objects
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix async validation errors not being displayed
- And fix validation errors sometimes being displayed multiple times
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Simplify builders for validators
- Replace the boolean type params on `function inputValidator` with a
new builder `function inputValidatorWithRequiredProps` to make the
code easier to read
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce unionizing functions for input validators
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove RequiredProps type param
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove all manual uses of v8 serialization
- Seems that sometimes the is a versioning mismatch within the binary
format causes cluster screen the go grey
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* handle ping
Signed-off-by: Sebastian Malton <sebastian@malton.name>