The version of Electron we're using ships with NodeJS 12.16.x; explicitly
pull in the correct version of the TypeScript declarations so that when we
compile TypeScript we can get the correct conversions (i.e. it will not
error out due to different arguments etc.).
Signed-off-by: Mark Yen <mark.yen@suse.com>
Pull in the default TypeScript lint configuration, but turn off things
we do not obey yet. Note that we make sure to insert it before all the
nuxt changes, so that the dashboard code will not need to comply.
Signed-off-by: Mark Yen <mark.yen@suse.com>
We no longer use nuxtron, since we needed the raw webpack configs to
ensure we quit the dev server when we quit the application.
Signed-off-by: Mark Yen <mark.yen@suse.com>
Stratos doesn't yet work with node-sass 5.x, and for some reason having
it installed in the parent project breaks Stratos builds. Downgrade to
4.x to have things work.
Note that node-sass 4.x is reported to not work with nodejs 15.x; this
means that we will require nodejs 14.x to build.
Signed-off-by: Mark Yen <mark.yen@suse.com>
We don't use this (we run eslint directly), and it pulls in a dependency
(yorkie) that messes with git hooks unnecessarily.
Signed-off-by: Mark Yen <mark.yen@suse.com>
* The apply button should be enabled only when changes have been made.
There's a new TODO: we should add a status bar in the UI to indicate
when prefs have been updated or k8s has been restarted.
In order to pull more components from github.com/rancher/dashboard, we
will need to use nuxt. But for that to happen, we need some
compatiblity layer with electron. It appears that nuxtron is a
reasonable option here.
- Other dependencies already use lodash, so we might as well use it
instead of relying on a single-use library
- Also I had to run the following to deal with the fatal startup error
message:
"Rule can only have one resource source"
$ rm -rf node_modules package-lock.json
$ npm install --legacy-peer-deps
I would have preferred separate commits, but the lodash change was
intermixed with the legacy changes.
It appears that the Vue 2 downgrade has caused issues in the
package.json such that removing the lock file leads to a combination
that could not be installed correctly.
This rebuilds package.json after removing packge-lock.json to ensure
that we are back to a consistent state again.
Up to this point RD has used hyperkit provided by docker or installed
via homebrew. This has worked for development but does not work going
forward. We cannot assume that either hyperkit is installed or that
the path the built app has includes hyperkit.
The change adds hyperkit via two steps:
1. hyperkit is downloaded and placed in the resources/darwin directory
alongside of minikube. It does this by checking out the source at
a specific version and building it. This is needed because hyperkit
is not available as a download.
2. The path to hyperkit is added at the start of the path when minikube
processes are spawned. The start of the path is used so that RD
provided hyperkit is used instead of a different version that may
be available on the system.
Signed-off-by: Matt Farina <matt@mattfarina.com>
That does everything needed; running electron manually leads to errors
loading files.
Also drops the "concurrently" package, since we no longer use it.